]> CyberLeo.Net >> Repos - Github/sugarcrm.git/blob - modules/Configurator/views/view.addfontresult.php
Release 6.2.0
[Github/sugarcrm.git] / modules / Configurator / views / view.addfontresult.php
1 <?php
2 if(!defined('sugarEntry') || !sugarEntry) die('Not A Valid Entry Point');
3
4 /*********************************************************************************
5  * SugarCRM Community Edition is a customer relationship management program developed by
6  * SugarCRM, Inc. Copyright (C) 2004-2011 SugarCRM Inc.
7  * 
8  * This program is free software; you can redistribute it and/or modify it under
9  * the terms of the GNU Affero General Public License version 3 as published by the
10  * Free Software Foundation with the addition of the following permission added
11  * to Section 15 as permitted in Section 7(a): FOR ANY PART OF THE COVERED WORK
12  * IN WHICH THE COPYRIGHT IS OWNED BY SUGARCRM, SUGARCRM DISCLAIMS THE WARRANTY
13  * OF NON INFRINGEMENT OF THIRD PARTY RIGHTS.
14  * 
15  * This program is distributed in the hope that it will be useful, but WITHOUT
16  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
17  * FOR A PARTICULAR PURPOSE.  See the GNU Affero General Public License for more
18  * details.
19  * 
20  * You should have received a copy of the GNU Affero General Public License along with
21  * this program; if not, see http://www.gnu.org/licenses or write to the Free
22  * Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
23  * 02110-1301 USA.
24  * 
25  * You can contact SugarCRM, Inc. headquarters at 10050 North Wolfe Road,
26  * SW2-130, Cupertino, CA 95014, USA. or at email address contact@sugarcrm.com.
27  * 
28  * The interactive user interfaces in modified source and object code versions
29  * of this program must display Appropriate Legal Notices, as required under
30  * Section 5 of the GNU Affero General Public License version 3.
31  * 
32  * In accordance with Section 7(b) of the GNU Affero General Public License version 3,
33  * these Appropriate Legal Notices must retain the display of the "Powered by
34  * SugarCRM" logo. If the display of the logo is not reasonably feasible for
35  * technical reasons, the Appropriate Legal Notices must display the words
36  * "Powered by SugarCRM".
37  ********************************************************************************/
38
39 require_once('include/MVC/View/SugarView.php');
40 class ConfiguratorViewAddFontResult extends SugarView {
41    var $log="";
42     /**
43      * Constructor
44      */
45     public function AddFontResult(){
46         parent::SugarView();
47     }
48     /** 
49      * display the form
50      */
51     public function display(){
52         global $mod_strings, $app_list_strings, $app_strings, $current_user;
53         if(!is_admin($current_user)){
54            sugar_die($GLOBALS['app_strings']['ERR_NOT_ADMIN']); 
55         }
56         $error = $this->addFont();
57         
58         $this->ss->assign("MODULE_TITLE", 
59             getClassicModuleTitle(
60                 $mod_strings['LBL_MODULE_ID'], 
61                 array($mod_strings['LBL_ADDFONTRESULT_TITLE']), 
62                 false
63                 )
64             );
65         if($error){
66             $this->ss->assign("error", $this->log);
67         }else{
68             $this->ss->assign("info", $this->log);
69         }
70         $this->ss->assign("MOD", $mod_strings);
71         $this->ss->assign("APP", $app_strings);
72 //display
73         $this->ss->display('modules/Configurator/tpls/addFontResult.tpl');
74     }
75     
76     /**
77      * This method prepares the received data and call the addFont method of the fontManager
78      * @return boolean true on success
79      */
80     private function addFont(){
81         $this->log="";
82         $error=false;
83         require_once('include/upload_file.php'); 
84         $files = array("pdf_metric_file","pdf_font_file");
85         foreach($files as $k){
86             // handle uploaded file
87             $uploadFile = new UploadFile($k);
88             if (isset($_FILES[$k]) && $uploadFile->confirm_upload()){
89                 $uploadFile->final_move(basename($_FILES[$k]['name']));
90                 $uploadFileNames[$k] = $uploadFile->get_upload_path(basename($_FILES[$k]['name']));
91             }else{
92                 $this->log = translate('ERR_PDF_NO_UPLOAD', "Configurator");
93                 $error=true;
94             }
95         }
96         if(!$error){
97             require_once('include/Sugarpdf/FontManager.php');
98             $fontManager = new FontManager();
99             $error = $fontManager->addFont($uploadFileNames["pdf_font_file"],$uploadFileNames["pdf_metric_file"], $_REQUEST['pdf_embedded'], $_REQUEST['pdf_encoding_table'], eval($_REQUEST['pdf_patch']), htmlspecialchars_decode($_REQUEST['pdf_cidinfo'],ENT_QUOTES), $_REQUEST['pdf_style_list']);
100             $this->log .= $fontManager->log;
101             if($error){
102                 $this->log .= implode("\n",$fontManager->errors);
103             }
104         }
105         return $error;
106     }
107 }
108