protected function getXMLMetaData($headers) { $user = new I2CE_User(); $sender_role = $user->getRole(); $sender_username = $user->username(); $sender_name = $user->firstname . ' ' . $user->lastname; $sender_email = $user->email; $data_elements = ''; $report = addslashes($this->view); $name = $report; $this->config->setIfIsSet($name, 'display_name'); $desc = $name . ' report'; $this->config->setIfIsSet($desc, 'description'); $when = date("c"); array_shift($headers); //get rid of the # header foreach ($headers as $key => $header) { $data_elements .= " <elemDesc id='{$key}'>\n <name>{$header}</name>\n </elemDesc>\n"; } return "<ihrisReport id='{$report}'> \n <reportDetails>\n <name>{$name}</name>\n <description>{$desc}</description>\n <whenGenerated>{$when}</whenGenerated>\n <sender>\n <user>{$sender_username}</user>\n <name>{$sender_name}</name>\n <role>{$sender_role}</role>\n <email>{$sender_email}</email> \n </sender>\n <dataElements>\n{$data_elements} </dataElements>\n </reportDetails>\n <reportData>\n"; return $out; }
protected function get_XLS_2004_XML_MetaData($headers) { $user = new I2CE_User(); $sender_role = $user->getRole(); $sender_username = $user->username(); $sender_name = $user->firstname . ' ' . $user->lastname; $sender_email = $user->email; $report = addslashes($this->view); $name = $report; $this->config->setIfIsSet($name, 'display_name'); $desc = ''; $this->config->setIfIsSet($desc, 'description'); $desc = $report . ':' . $desc; $when = date("c"); //array_shift($headers); //get rid of the # header $col_desc = str_repeat('<Column ss:AutoFitWidth="1"/>', count($headers)); $header_title = ' <Row ss:Height="14">'; foreach ($headers as $key => $header) { $header_title .= "<Cell ss:StyleID='s17'><Data ss:Type='String'>{$header}</Data></Cell>"; } $header_title .= ' </Row>' . "\n"; //$sender_role //$sender_email $user_title = "{$sender_username} {$sender_name}"; $meta_title = '<Row ss:Height="14">'; ///do something with $sener_name, $sender_email, $sender_role, $sender_username, $when, $name, $desc $meta_title .= "<Cell ss:StyleID='s17'><Data ss:Type='String'>{$sender_name}</Data></Cell>"; $meta_title .= "<Cell ss:StyleID='s17'><Data ss:Type='String'>{$sender_email}</Data></Cell>"; $meta_title .= "<Cell ss:StyleID='s17'><Data ss:Type='String'>{$sender_username}</Data></Cell>"; $meta_title .= "<Cell ss:StyleID='s17'><Data ss:Type='String'>{$sender_role}</Data></Cell>"; $meta_title .= "<Cell ss:StyleID='s17'><Data ss:Type='String'>{$sender_when}</Data></Cell>"; $meta_title .= "</Row>\n"; $meta_title = '<Row ss:Height="14">'; ///do something with $sener_name, $sender_email, $sender_role, $sender_username, $when, $name, $desc $meta_title .= "<Cell ss:StyleID='s22'><Data ss:Type='String'>{$name}</Data></Cell>"; $meta_title .= "<Cell ss:StyleID='s22'><Data ss:Type='String'>{$desc}</Data></Cell>"; $meta_title .= "<Cell ss:StyleID='s22'><Data ss:Type='String'>{$when}</Data></Cell>"; $meta_title .= "</Row>\n"; $preamble = "<?xml version='1.0'?>\n<Workbook xmlns='urn:schemas-microsoft-com:office:spreadsheet'\n xmlns:o='urn:schemas-microsoft-com:office:office'\n xmlns:x='urn:schemas-microsoft-com:office:excel'\n xmlns:ss='urn:schemas-microsoft-com:office:spreadsheet'\n xmlns:html='http://www.w3.org/TR/REC-html40'>\n <DocumentProperties xmlns='urn:schemas-microsoft-com:office:office'>\n <Author>{$user_title}</Author>\n <LastAuthor>{$user_title}</LastAuthor>\n <Created>{$when}</Created>\n <LastSaved>2015-02-05T17:30:02Z</LastSaved>\n <Company>I2CE + iHRIS</Company>\n <Version>14.0</Version>\n </DocumentProperties>\n <OfficeDocumentSettings xmlns='urn:schemas-microsoft-com:office:office'>\n <AllowPNG/>\n </OfficeDocumentSettings>\n <ExcelWorkbook xmlns='urn:schemas-microsoft-com:office:excel'>\n <WindowHeight>9740</WindowHeight>\n <WindowWidth>23840</WindowWidth>\n <WindowTopX>480</WindowTopX>\n <WindowTopY>40</WindowTopY>\n <TabRatio>600</TabRatio>\n <CreateBackup/>\n <ProtectStructure>False</ProtectStructure>\n <ProtectWindows>False</ProtectWindows>\n </ExcelWorkbook>\n <Styles>\n <Style ss:ID='Default' ss:Name='Normal'>\n <Alignment ss:Vertical='Bottom'/>\n <Borders/>\n <Font ss:FontName='MS Sans Serif'/>\n <Interior/>\n <NumberFormat/>\n <Protection/>\n </Style>\n <Style ss:ID='s17'>\n <Alignment ss:Horizontal='Center' ss:Vertical='Center'/>\n <Borders>\n <Border ss:Position='Bottom' ss:LineStyle='Continuous' ss:Weight='1'/>\n <Border ss:Position='Left' ss:LineStyle='Continuous' ss:Weight='1'/>\n <Border ss:Position='Right' ss:LineStyle='Continuous' ss:Weight='1'/>\n <Border ss:Position='Top' ss:LineStyle='Continuous' ss:Weight='1'/>\n </Borders>\n <Font ss:FontName='Calibri' ss:Size='11' ss:Color='#000000' ss:Bold='1'/>\n <Interior ss:Color='#C0C0C0' ss:Pattern='Solid'/>\n <Protection/>\n </Style>\n <Style ss:ID='s19'>\n <Alignment ss:Vertical='Center' ss:WrapText='1'/>\n <Borders>\n <Border ss:Position='Bottom' ss:LineStyle='Continuous' ss:Weight='1'\n ss:Color='#C0C0C0'/>\n <Border ss:Position='Left' ss:LineStyle='Continuous' ss:Weight='1'\n ss:Color='#C0C0C0'/>\n <Border ss:Position='Right' ss:LineStyle='Continuous' ss:Weight='1'\n ss:Color='#C0C0C0'/>\n <Border ss:Position='Top' ss:LineStyle='Continuous' ss:Weight='1'\n ss:Color='#C0C0C0'/>\n </Borders>\n <Font ss:FontName='Calibri' ss:Size='11' ss:Color='#000000'/>\n <Interior/>\n <Protection/>\n </Style>\n <Style ss:ID='s20'>\n <Alignment ss:Horizontal='Right' ss:Vertical='Center' ss:WrapText='1'/>\n <Borders>\n <Border ss:Position='Bottom' ss:LineStyle='Continuous' ss:Weight='1'\n ss:Color='#C0C0C0'/>\n <Border ss:Position='Left' ss:LineStyle='Continuous' ss:Weight='1'\n ss:Color='#C0C0C0'/>\n <Border ss:Position='Right' ss:LineStyle='Continuous' ss:Weight='1'\n ss:Color='#C0C0C0'/>\n <Border ss:Position='Top' ss:LineStyle='Continuous' ss:Weight='1'\n ss:Color='#C0C0C0'/>\n </Borders>\n <Font ss:FontName='Calibri' ss:Size='11' ss:Color='#000000'/>\n <Interior/>\n <Protection/>\n </Style>\n <Style ss:ID='s22'>\n <Alignment ss:Horizontal='Right' ss:Vertical='Center' ss:WrapText='1'/>\n <Borders>\n <Border ss:Position='Bottom' ss:LineStyle='Continuous' ss:Weight='1'\n ss:Color='#C0C0C0'/>\n <Border ss:Position='Left' ss:LineStyle='Continuous' ss:Weight='1'\n ss:Color='#C0C0C0'/>\n <Border ss:Position='Right' ss:LineStyle='Continuous' ss:Weight='1'\n ss:Color='#C0C0C0'/>\n <Border ss:Position='Top' ss:LineStyle='Continuous' ss:Weight='1'\n ss:Color='#C0C0C0'/>\n </Borders>\n <Font ss:FontName='Calibri' ss:Size='11' ss:Color='#000000'/>\n <Interior/>\n <NumberFormat ss:Format='dd\\-mmm\\-yy'/>\n <Protection/>\n </Style>\n </Styles>\n <Worksheet ss:Name='{$name}'>\n <Table ss:ExpandedColumnCount='48' ss:ExpandedRowCount='11527' x:FullColumns='1' x:FullRows='1' ss:DefaultColumnWidth='61'>\n"; return $preamble . $cold_desc . $meta_title . $header_title; }