Exemplo n.º 1
0
/**
 *
 * @author Matthew McNaney <mcnaney at gmail dot com>
 * @package Global
 * @license http://opensource.org/licenses/lgpl-3.0.html
 */
function select2Script()
{
    $script = '<script type="text/javascript" src="' . PHPWS_SOURCE_HTTP . 'javascript/select2/select2.min.js"></script>';
    \Layout::addJSHeader($script);
    \Layout::addToStyleList('javascript/select2/select2.min.css');
    \Layout::addToStyleList('javascript/select2/select2-bootstrap.css');
}
Exemplo n.º 2
0
 public function show()
 {
     javascript('jquery');
     $home_http = PHPWS_SOURCE_HTTP;
     /**
      * Uncomment below for DEVELOPMENT
      * Comment out for PRODUCTION
      */
     //        Layout::addJSHeader("<script src='{$home_http}mod/hms/javascript/react/build/react.js'></script>");
     //        Layout::addJSHeader("<script src='{$home_http}mod/hms/javascript/react/build/JSXTransformer.js'></script>");
     //        Layout::addJSHeader("<script type='text/jsx' src='{$home_http}mod/hms/javascript/AssignByFloor/src/AssignByFloor.jsx'></script>");
     /**
      * Uncomment below for PRODUCTION
      * Comment out for DEVELOPMENT
      */
     Layout::addJSHeader("<script src='{$home_http}mod/hms/javascript/react/build/react.min.js'></script>");
     Layout::addJSHeader("<script src='{$home_http}mod/hms/javascript/AssignByFloor/build/AssignByFloor.js'></script>");
     /**
      * Remainder of code is untouched regardless of development status
      */
     Layout::addJSHeader("<script type='text/javascript'>var sourceHttp = '{$home_http}';</script>");
     ob_start();
     include PHPWS_HOME_HTTP . 'mod/hms/templates/admin/AssignByFloor.html';
     return ob_get_clean();
 }
Exemplo n.º 3
0
    public static function form(\Request $request, $active_tab)
    {
        javascript('jquery');
        \Form::requiredScript();
        if (!in_array($active_tab, array('contact-info', 'map', 'social'))) {
            $active_tab = 'contact-info';
        }
        $thumbnail_map = \Settings::get('contact', 'thumbnail_map');
        $contact_info = self::load();
        $values = self::getValues($contact_info);
        require PHPWS_SOURCE_DIR . 'mod/contact/config/states.php';
        $values['states'] =& $states;
        if (!empty($thumbnail_map)) {
            $values['thumbnail_map'] = "<img src='{$thumbnail_map}' />";
        } else {
            $values['thumbnail_map'] = null;
        }
        $js_social_links = ContactInfo\Social::getLinksAsJavascriptObject($values['social']);
        $js_string = <<<EOF
<script type='text/javascript'>var active_tab = '{$active_tab}';var thumbnail_map = '{$thumbnail_map}';var social_urls = {$js_social_links};</script>
EOF;
        \Layout::addJSHeader($js_string);
        $script = PHPWS_SOURCE_HTTP . 'mod/contact/javascript/contact.js';
        \Layout::addJSHeader("<script type='text/javascript' src='{$script}'></script>");
        \Layout::addJSHeader('<script src="https://maps.googleapis.com/maps/api/js?v=3.exp"></script>');
        $template = new \Template($values);
        $template->setModuleTemplate('contact', 'Contact_Info_Form.html');
        return $template->get();
    }
Exemplo n.º 4
0
 protected function loadJavascript()
 {
     javascript('jquery');
     javascript('dropzone');
     javascript('authkey', null, null, true);
     $accepted_files = $this->getAllowedFileTypes();
     $included_script = "<script type='text/javascript'>Dropzone.autoDiscover = false;</script>" . "<script type='text/javascript'>var accepted_files='{$accepted_files}';var ftype={$this->ftype};</script>";
     \Layout::addJSHeader($included_script, 'fc_accepted_files');
     $source = PHPWS_SOURCE_HTTP . 'mod/filecabinet/javascript/fc_folders/folder.js';
     $script = "<script type='text/javascript' src='{$source}'></script>";
     \Layout::addJSHeader($script, 'fc_folder');
 }
Exemplo n.º 5
0
 public function show()
 {
     $residentStudents = $this->room->get_assignees();
     $home_http = PHPWS_SOURCE_HTTP;
     $residents = array();
     foreach ($residentStudents as $s) {
         $residents[] = array('studentId' => $s->getBannerId(), 'name' => $s->getName());
     }
     $vars = array();
     javascript('jquery');
     // Load header for Angular Frontend
     /**
      * Uncomment below for DEVELOPMENT
      * Comment out for PRODUCTION
      */
     //Layout::addJSHeader("<script src='{$home_http}mod/hms/javascript/react/build/react.js'></script>");
     //Layout::addJSHeader("<script src='{$home_http}mod/hms/javascript/react/build/JSXTransformer.js'></script>");
     //Layout::addJSHeader("<script type='text/jsx' src='{$home_http}mod/hms/javascript/CheckOut/src/CheckOut.jsx'></script>");
     /**
      * Uncomment below for PRODUCTION
      * Comment out for DEVELOPMENT
      */
     Layout::addJSHeader("<script src='{$home_http}mod/hms/javascript/react/build/react.min.js'></script>");
     Layout::addJSHeader("<script src='{$home_http}mod/hms/javascript/CheckOut/build/CheckOut.js'></script>");
     /**
      * Remainder of code is untouched regardless of development status
      */
     Layout::addJSHeader("<script type='text/javascript'>var sourceHttp = '{$home_http}';</script>");
     $vars['student'] = $this->student->getFullName();
     $vars['banner_id'] = $this->student->getBannerId();
     $vars['hall_name'] = $this->hall->getHallName();
     $vars['room_number'] = $this->room->getRoomNumber();
     $vars['residents'] = json_encode($residents);
     $vars['checkin_id'] = $this->checkin->id;
     $vars['previous_key_code'] = $this->checkin->key_code;
     $vars['room_pid'] = $this->room->persistent_id;
     $damage_types = DamageTypeFactory::getDamageTypeAssoc();
     $damage_options = array();
     foreach ($damage_types as $dt) {
         $damage_options[$dt['category']][] = array('id' => $dt['id'], 'description' => $dt['description']);
     }
     $vars['damage_types'] = json_encode($damage_types);
     if (empty($this->damages)) {
         $vars['existing_damage'] = '[]';
     } else {
         $this->addResponsible($residents);
         $vars['existing_damage'] = json_encode($this->damages);
     }
     $tpl = new \Template($vars);
     $tpl->setModuleTemplate('hms', 'admin/CheckOut.html');
     return $tpl->get();
 }
Exemplo n.º 6
0
function loadReact($data)
{
    javascript('jquery');
    $home_http = PHPWS_SOURCE_HTTP;
    if (isset($data['development']) && $data['development']) {
        if (isset($data['addons']) && $data['addons']) {
            Layout::addJSHeader("<script src='{$home_http}javascript/react/build/react-with-addons.js'></script>");
        } else {
            Layout::addJSHeader("<script src='{$home_http}javascript/react/build/react.js'></script>");
        }
        Layout::addJSHeader("<script src='{$home_http}javascript/react/build/JSXTransformer.js'></script>");
    } else {
        if (isset($data['addons']) && $data['addons']) {
            Layout::addJSHeader("<script src='{$home_http}javascript/react/build/react-with-addons.min.js'></script>");
        } else {
            Layout::addJSHeader("<script src='{$home_http}javascript/react/build/react.min.js'></script>");
        }
    }
}
Exemplo n.º 7
0
 protected function getJavascript()
 {
     $source_http = PHPWS_SOURCE_HTTP;
     \Layout::addJSHeader("<script type='text/javascript' src='{$source_http}Global/Templates/Pager/pager.js'></script>");
 }
Exemplo n.º 8
0
    }
    if (isset($GLOBALS['reactDevAddOnLoaded'])) {
        return;
    }
    if (isset($data['addons']) && $data['addons']) {
        Layout::addJSHeader("<script src='{$home_http}javascript/react/build/react-with-addons.js'></script>", 'reactload');
        // onload normal react, let addon have precedence
        $GLOBALS['reactDevAddOnLoaded'] = true;
    } else {
        Layout::addJSHeader("<script src='{$home_http}javascript/react/build/react.js'></script>", 'reactload');
    }
    $GLOBALS['reactDevLoaded'] = true;
    Layout::addJSHeader("<script src='{$home_http}javascript/react/build/react-dom.js'></script>", 'react-dom');
    Layout::addJSHeader("<script src='{$home_http}javascript/react/build/JSXTransformer.js'></script>", 'jsxtrans');
} else {
    // if dev or minified addon react have loaded, don't load again
    if (isset($GLOBALS['reactDevLoaded'])) {
        return;
    }
    if (isset($GLOBALS['reactAddOnLoaded'])) {
        return;
    }
    if (isset($data['addons']) && $data['addons']) {
        Layout::addJSHeader("<script src='{$home_http}javascript/react/build/react-with-addons.min.js'></script>", 'reactload');
        // onload normal react, let addon have precedence
        $GLOBALS['reactAddOnLoaded'] = true;
    } else {
        Layout::addJSHeader("<script src='{$home_http}javascript/react/build/react.min.js'></script>", 'reactload');
    }
    Layout::addJSHeader("<script src='{$home_http}javascript/react/build/react-dom.min.js'></script>", 'react-dom');
}
Exemplo n.º 9
0
 /**
  * Handle the submit from the search form.
  * 
  * @param \Request $request
  * @return \Response
  */
 public function post(\Request $request)
 {
     $script = PHPWS_SOURCE_HTTP . 'mod/systemsinventory/javascript/sys_pager.js';
     $source_http = PHPWS_SOURCE_HTTP;
     \Layout::addJSHeader("<script type='text/javascript'>var source_http = '{$source_http}';</script>");
     \Layout::addLink("<script type='text/javascript' src='{$script}'></script>");
     $factory = new Factory();
     $search_vars = $request->getVars();
     $_SESSION['system_search_vars'] = $search_vars['vars'];
     \Pager::prepare();
     $template = new \Template();
     $template->setModuleTemplate('systemsinventory', 'search_results.html');
     $view = new \View\HtmlView($template->get());
     $response = new \Response($view);
     return $response;
 }
Exemplo n.º 10
0
    private function menuList()
    {
        \Layout::addStyle('menu', 'admin.css');
        javascript('jquery');
        javascript('jquery_ui');
        //commenting out for now. problem clearing select dropdown
        //javascript('select2');
        $template = new \Template();
        $template->setModuleTemplate('menu', 'admin/administrate.html');
        $first_menu_pin_all = 0;
        $first_menu_template = null;
        $db = new PHPWS_DB('menus');
        $db->addOrder('queue');
        $result = $db->getObjects('Menu_Item');
        $first_menu = null;
        if (!empty($result)) {
            foreach ($result as $menu) {
                $menu->_show_all = true;
                if (empty($first_menu)) {
                    $first_menu = $menu;
                    $active = 'active';
                } else {
                    $active = null;
                }
                $tpl['menus'][] = array('title' => $menu->title, 'id' => $menu->id, 'active' => $active);
            }
            $first_menu_template = $first_menu->template;
            // for display, use the admin template
            $first_menu->template = 'admin';
            $tpl['first_menu'] = $first_menu->view(true);
            $first_menu_pin_all = $first_menu->pin_all;
            $first_menu_id = $first_menu->id;
        } else {
            $first_menu_id = 0;
            $tpl['first_menu'] = null;
        }
        $vars['delete'] = t('Delete');
        $vars['confirm_delete'] = t('Confirm deletion');
        $vars['first_menu_id'] = $first_menu_id;
        $vars['authkey'] = \Current_User::getAuthKey();
        $vars['blank_title'] = t('Title must not be blank');
        $vars['title_error'] = t('Make sure you have filled in the required inputs.');
        $vars['url_error'] = t('Please enter a url or choose a PageSmith page.');
        $vars['delete_menu_message'] = t('Are you sure you want to delete this menu and links?');
        $vars['edit'] = t('Edit');
        $vars['title_error'] = t('Please enter a menu title');
        if (PHPWS_Settings::get('menu', 'display_type')) {
            $vars['pin_all'] = null;
            $vars['pin_some'] = null;
        } else {
            $vars['pin_all'] = t('Shown on all pages');
            $vars['pin_some'] = t('Shown on some pages');
        }
        $jvar = json_encode($vars);
        $script = <<<EOF
<script type="text/javascript">var translate = {$jvar}; var fmp={$first_menu_pin_all};</script>
EOF;
        \Layout::addJSHeader($script);
        \Layout::addJSHeader('<script type="text/javascript" src="' . PHPWS_SOURCE_HTTP . 'mod/menu/javascript/administrate/script.js"></script>');
        $main_menu_templates = PHPWS_File::listDirectories(PHPWS_Template::getTemplateDirectory('menu') . 'menu_layout/');
        $theme_menu_templates = PHPWS_File::listDirectories(PHPWS_Template::getTplDir('menu') . 'menu_layout/');
        $menu_tpls[] = '<optgroup label="' . t('Menu module templates') . '">';
        foreach ($main_menu_templates as $menu_tpl) {
            if ($first_menu_template == $menu_tpl) {
                $selected = ' selected="selected"';
            } else {
                $selected = null;
            }
            $menu_tpls[] = "<option value='{$menu_tpl}'{$selected}>{$menu_tpl}</option>";
        }
        $menu_tpls[] = '</optgroup>';
        if (!empty($theme_menu_templates)) {
            $menu_tpls[] = '<optgroup label="' . t('Theme templates') . '">';
            foreach ($theme_menu_templates as $menu_tpl) {
                if ($first_menu_template == $menu_tpl) {
                    $selected = ' selected="selected"';
                } else {
                    $selected = null;
                }
                $menu_tpls[] = "<option value='{$menu_tpl}'{$selected}>{$menu_tpl}</option>";
            }
            $menu_tpls[] = '</optgroup>';
        }
        $tpl['templates'] = implode('', $menu_tpls);
        $tpl['display_type'] = \PHPWS_Settings::get('menu', 'display_type');
        if (isset($first_menu) && $first_menu->pin_all) {
            $tpl['pin_all'] = $vars['pin_all'];
            $tpl['pin_button_class'] = 'btn-primary';
        } else {
            $tpl['pin_all'] = $vars['pin_some'];
            $tpl['pin_button_class'] = 'btn-default';
        }
        if (\Current_User::isDeity()) {
            $tpl['reset_menu_link'] = PHPWS_Text::linkAddress('menu', array('command' => 'reset_menu'), true);
        } else {
            $tpl['reset_menu_link'] = '#';
        }
        $tpl['link_limit'] = \PHPWS_Settings::get('menu', 'max_link_characters');
        if (\PHPWS_Core::moduleExists('carousel')) {
            $tpl['carousel'] = $this->carouselSlidesForm();
        } else {
            $tpl['carousel'] = null;
        }
        $template->addVariables($tpl);
        return $template->get();
    }
Exemplo n.º 11
0
<?php

/**
 * @author Matthew McNaney <mcnaney at gmail dot com>
 * @version $Id$
 */
Block::show();
if (Current_User::allow('block')) {
    $key = Key::getCurrent();
    if (Key::checkKey($key) && javascriptEnabled()) {
        javascript('jquery');
        javascript('ckeditor');
        $js_address = PHPWS_SOURCE_HTTP . 'mod/block/javascript/addblock/script.js';
        Layout::addJSHeader('<script src="' . $js_address . '" type="text/javascript"></script>', 'addblock');
        $modal = new \Modal('block-form-modal', '<div id="block-form-dialog"></div>', 'Add block here');
        $modal->sizeLarge();
        $save_button = '<button class="btn btn-success" id="save-block">Save</button>';
        $modal->addButton($save_button);
        Layout::add((string) $modal);
        MiniAdmin::add('block', '<a style="cursor:pointer" data-auth-key="' . Current_User::getAuthKey() . '" data-key-id="' . $key->id . '" id="add-block"><i class="fa fa-plus"></i> Add block here</a>');
    }
}
Exemplo n.º 12
0
<?php

/**
 *
 * @author Matthew McNaney <mcnaney at gmail dot com>
 * @package Global
 * @license http://opensource.org/licenses/lgpl-3.0.html
 */
javascript('jquery');
$wrap_header = $wrap_body = true;
$style = '<link rel="stylesheet" type="text/css" href="' . PHPWS_SOURCE_HTTP . 'javascript/datetimepicker/jquery.datetimepicker.css" / >';
\Layout::addJSHeader($style);
\Layout::addJSHeader('<script src="' . PHPWS_SOURCE_HTTP . 'javascript/datetimepicker/jquery.datetimepicker.js"></script>');
$default['format'] = null;
$options = array();
if (!empty($data['format'])) {
    $format = $data['format'];
    $options[] = "format:'{$format}'";
}
if (isset($data['timepicker'])) {
    $options[] = 'timepicker: ' . ($data['timepicker'] ? 'true' : 'false');
}
if (isset($data['datepicker'])) {
    $options[] = 'datepicker: ' . ($data['datepicker'] ? 'true' : 'false');
}
if (isset($data['format'])) {
    $options[] = "format: '" . $data['format'] . "'";
}
if (!isset($data['selector'])) {
    $data['selector'] = '.datetimepicker';
}
Exemplo n.º 13
0
 /**
  * Displays the page layout and lets user enter text fields, blocks, etc.
  */
 public function pageLayout()
 {
     javascript('jquery');
     javascript('jquery_ui');
     javascript('ckeditor');
     Layout::addStyle('pagesmith', 'admin.css');
     Layout::addJSHeader('<script type="text/javascript" src="' . PHPWS_SOURCE_HTTP . 'mod/pagesmith/javascript/pageedit/script.js"></script>', 'pageedit');
     Layout::addStyle('pagesmith');
     $page = $this->ps->page;
     $pg_tpl_name =& $page->_tpl->name;
     $this->ps->killSaved($page->id);
     if (!empty($page->_content)) {
         foreach ($page->_content as $key => $cnt) {
             if (!PageSmith::checkLorum($cnt)) {
                 $_SESSION['PS_Page'][$page->id][$key] = $cnt;
             }
         }
     }
     $form = new PHPWS_Form('pagesmith');
     $form->addHidden('module', 'pagesmith');
     $form->addHidden('aop', 'post_page');
     $form->addHidden('tpl', $page->template);
     $form->addHidden('pid', $page->parent_page);
     $template_list = $this->ps->getTemplateList();
     $form->addSelect('template_list', $template_list);
     $form->setMatch('template_list', $page->template);
     $form->addSubmit('change_tpl', dgettext('pagesmith', 'Change template'));
     if ($page->id) {
         $form->addHidden('id', $page->id);
     }
     if (empty($page->_tpl) || $page->_tpl->error) {
         $this->ps->content = dgettext('pagesmith', 'Unable to load page template.');
         return;
     }
     $form->addSubmit('submit', dgettext('pagesmith', 'Save page'));
     $form->setClass('submit', 'btn btn-success');
     $page->loadKey();
     if ($page->_key->id && $page->_key->show_after) {
         $publish_date = $page->_key->show_after;
     } else {
         $publish_date = time();
     }
     $this->pageTemplateForm($form);
     $tpl = $form->getTemplate();
     $tpl['PUBLISH_DATE_LABEL'] = 'Show page after this date and time';
     $tpl['PUBLISH_VALUE'] = strftime('%Y-%m-%dT%H:%M:%S', $publish_date);
     $tpl['PAGE_TITLE'] = $page->title;
     $jsvars['page_title_input'] = 'pagesmith_title';
     $jsvars['page_title_id'] = sprintf('%s-page-title', $pg_tpl_name);
     javascriptMod('pagesmith', 'pagetitle', $jsvars);
     $tpl['HIDE_CHECK'] = $page->hide_title ? 'checked="checked"' : null;
     if (!empty($page->_orphans)) {
         $tpl['ORPHAN_LINK'] = sprintf('<a href="%s#orphans">%s</a>', PHPWS_Core::getCurrentUrl(), dgettext('pagesmith', 'Orphans'));
         $tpl['ORPHANS'] = $this->listOrphans($page->_orphans);
     }
     // We wrap the textarea in a form just so ckeditor will allow use of the "Save" button.
     $modal = new \Modal('edit-section', '<form><textarea id="block-edit-textarea"></textarea></form>', dgettext('pagesmith', 'Edit text area'));
     $modal->addButton('<button id="save-page" class="btn btn-success">' . dgettext('pagesmith', 'Save') . '</button>');
     $modal->setWidthPercentage(90);
     $tpl['CONTENT_MODAL'] = $modal->__toString();
     $title_modal = new \Modal('edit-title', '<input class="form-control" type="text" id="page-title-input" name="page_title" value="" />', dgettext('pagesmith', 'Edit page title'));
     $title_modal->addButton('<button id="save-title" class="btn btn-success">' . dgettext('pagesmith', 'Save') . '</button>');
     $tpl['TITLE_MODAL'] = $title_modal->__toString();
     $this->ps->content = PHPWS_Template::process($tpl, 'pagesmith', 'page_form.tpl');
 }
Exemplo n.º 14
0
 /**
  * Loads the javascript file that helps enforce required fields. This may
  * eventually be incorporated into __toString or getInputStringArray.
  */
 public static function requiredScript()
 {
     javascript('jquery');
     \Layout::addJSHeader("<script type='text/javascript' src='" . PHPWS_SOURCE_HTTP . "Global/Templates/Form/required.js'></script>");
 }
Exemplo n.º 15
0
<?php

javascript('jquery');
Layout::plug(Layout::getPageTitle(TRUE), 'SITE_TITLE');
Layout::addJSHeader('<script type="text/javascript" src="' . PHPWS_SOURCE_HTTP . 'themes/bootstrap/js/bootstrap.min.js"></script>', 'bootstrap');
Layout::addJSHeader('<script type="text/javascript" src="' . PHPWS_SOURCE_HTTP . 'themes/bootstrap/js/modal_fix.js"></script>', 'fix');
$key = Key::getCurrent();
if (!is_null($key)) {
    Layout::plug('active', 'CONTENT_PAGE');
}
Exemplo n.º 16
0
 public function adminMenu()
 {
     if (!Current_User::allow('signup')) {
         Current_User::disallow();
     }
     $this->loadPanel();
     $javascript = false;
     $this->loadMessage();
     $command = $_REQUEST['aop'];
     switch ($command) {
         case 'add_slot_peep':
             $javascript = true;
             $this->loadPeep();
             $this->loadForm('edit_peep');
             break;
         case 'menu':
             if (!isset($_GET['tab'])) {
                 $this->loadForm('list');
             } else {
                 $this->loadForm($_GET['tab']);
             }
             break;
         case 'delete_sheet':
             $this->loadSheet();
             $this->sheet->delete();
             $this->message = dgettext('signup', 'Signup sheet deleted.');
             $this->loadForm('list');
             break;
         case 'edit_sheet':
             $this->loadForm('edit_sheet');
             break;
         case 'edit_slot_peep':
             $javascript = true;
             $this->loadPeep();
             $this->loadForm('edit_peep');
             break;
         case 'edit_slot_popup':
             $javascript = true;
             $this->loadSlot();
             $this->loadForm('edit_slot_popup');
             break;
         case 'edit_peep_popup':
             $javascript = true;
             $this->loadSlot();
             $this->loadForm('edit_peep_popup');
             break;
         case 'print_applicants':
             if (!Current_User::authorized('signup')) {
                 Current_User::disallow();
             }
             $this->loadSheet();
             $this->printApplicants();
             exit;
             break;
         case 'email_applicants':
             if (!Current_User::authorized('signup')) {
                 Current_User::disallow();
             }
             $this->loadEmail();
             $this->loadSheet();
             $this->loadForm('email_applicants');
             break;
         case 'post_email':
             if (!Current_User::authorized('signup')) {
                 Current_User::disallow();
             }
             $this->loadEmail();
             $this->loadSheet();
             if ($this->postEmail()) {
                 $this->sendEmail();
             } else {
                 $this->loadForm('email_applicants');
             }
             break;
         case 'slot_listing':
             if (!Current_User::authorized('signup')) {
                 Current_User::disallow();
             }
             $this->loadSheet();
             $this->slotListing();
             exit;
             break;
         case 'csv_applicants':
             if (!Current_User::authorized('signup')) {
                 Current_User::disallow();
             }
             $this->loadSheet();
             $this->csvExport();
             exit;
             break;
         case 'send_email':
             if (!Current_User::authorized('signup')) {
                 Current_User::disallow();
             }
             $this->sendEmail();
             break;
         case 'edit_slots':
             $this->loadSheet();
             $this->loadForm('edit_slots');
             break;
         case 'search_slot':
             $this->searchSlots();
             break;
         case 'post_peep':
             $javascript = true;
             if (!Current_User::authorized('signup')) {
                 Current_User::disallow();
             }
             if ($this->postPeep()) {
                 // Since added by an admin, automatically registered
                 $this->peep->registered = 1;
                 if (PHPWS_Error::logIfError($this->peep->save())) {
                     $this->forwardMessage(dgettext('signup', 'Error occurred when saving applicant.'));
                 } else {
                     $this->forwardMessage(dgettext('signup', 'Applicant saved successfully.'));
                 }
                 javascript('close_refresh');
                 Layout::nakedDisplay();
             } else {
                 $this->loadForm('edit_peep');
             }
             break;
         case 'post_sheet':
             $this->loadSheet();
             if (!Current_User::authorized('signup', 'edit_sheet', $this->sheet->id, 'sheet')) {
                 Current_User::disallow();
             }
             if ($this->postSheet()) {
                 if (!$this->sheet->id && PHPWS_Core::isPosted()) {
                     $this->message = dgettext('signup', 'Sheet previously posted.');
                     $this->loadForm('edit_sheet');
                 } else {
                     $new_sheet = !$this->sheet->id;
                     if (PHPWS_Error::logIfError($this->sheet->save())) {
                         $this->forwardMessage(dgettext('signup', 'Error occurred when saving sheet.'));
                         PHPWS_Core::reroute('index.php?module=signup&aop=list');
                     } else {
                         $this->forwardMessage(dgettext('signup', 'Sheet saved successfully.'));
                         if ($new_sheet) {
                             PHPWS_Core::reroute('index.php?module=signup&aop=edit_slots&sheet_id=' . $this->sheet->id);
                         } else {
                             $this->loadForm('list');
                         }
                     }
                 }
             } else {
                 $this->loadForm('edit_sheet');
             }
             break;
         case 'post_slot':
             $javascript = true;
             if (!Current_User::authorized('signup')) {
                 Current_User::disallow();
             }
             if ($this->postSlot()) {
                 if (PHPWS_Error::logIfError($this->slot->save())) {
                     $this->forwardMessage(dgettext('signup', 'Error occurred when saving slot.'));
                 } else {
                     $this->forwardMessage(dgettext('signup', 'Slot saved successfully.'));
                 }
                 javascript('close_refresh');
                 Layout::nakedDisplay();
             } else {
                 $this->loadForm('edit_slot_popup');
             }
             break;
         case 'move_peep':
             $this->loadPeep();
             $result = $this->movePeep();
             if (PHPWS_Error::logIfError($result) || !$result) {
                 $this->forwardMessage(dgettext('signup', 'Error occurred when moving applicant. Slot may be full.'));
             }
             PHPWS_Core::goBack();
             break;
         case 'move_top':
             $this->loadSlot();
             $this->slot->moveTop();
             PHPWS_Core::goBack();
             break;
         case 'move_up':
             $this->loadSlot();
             $this->slot->moveUp();
             PHPWS_Core::goBack();
             break;
         case 'move_down':
             $this->loadSlot();
             $this->slot->moveDown();
             PHPWS_Core::goBack();
             break;
         case 'move_bottom':
             $this->loadSlot();
             $this->slot->moveBottom();
             PHPWS_Core::goBack();
             break;
         case 'delete_slot':
             $this->loadSlot();
             $this->deleteSlot();
             break;
         case 'delete_slot_peep':
             $this->loadPeep();
             $this->peep->delete();
             PHPWS_Core::goBack();
             break;
         case 'report':
             if (!Current_User::authorized('signup')) {
                 Current_User::disallow();
             }
             $this->loadSheet();
             $this->loadForm('report');
             break;
         case 'alpha_order':
         case 'reset_slot_order':
             if (!Current_User::authorized('signup')) {
                 Current_User::disallow();
             }
             $this->loadSheet();
             $this->resetSlots($command);
             $this->forwardMessage(dgettext('signup', 'Slot order reset.'));
             PHPWS_Core::reroute('index.php?module=signup&sheet_id=' . $this->sheet->id . '&aop=edit_slots&authkey=' . Current_User::getAuthKey());
             break;
     }
     $tpl['TITLE'] = $this->title;
     $tpl['CONTENT'] = $this->content;
     $tpl['MESSAGE'] = $this->message;
     if ($javascript) {
         $fonts = '<link rel="stylesheet" type="text/css" href="' . PHPWS_SOURCE_HTTP . 'themes/bootstrap/font-awesome/css/font-awesome.min.css" />
         <link rel="stylesheet" type="text/css" href="' . PHPWS_SOURCE_HTTP . 'themes/bootstrap/css/bootstrap.min.css" />';
         \Layout::addJSHeader($fonts);
         Layout::nakedDisplay(PHPWS_Template::process($tpl, 'signup', 'main.tpl'));
     } else {
         $this->panel->setContent(PHPWS_Template::process($tpl, 'signup', 'main.tpl'));
         Layout::add(PHPWS_ControlPanel::display($this->panel->display()));
     }
 }
Exemplo n.º 17
0
 private function viewContactApprovals()
 {
     $development = false;
     if ($development) {
         $script_file = 'src/Approval.jsx';
         $type = 'text/jsx';
     } else {
         $script_file = 'build/Approval.js';
         $type = 'text/javascript';
     }
     $data['development'] = $development;
     $data['addons'] = false;
     javascript('react', $data);
     $script = '<script type="' . $type . '" src="' . PHPWS_SOURCE_HTTP . 'mod/properties/javascript/ContactApproval/' . $script_file . '"></script>' . '<script type="text/javascript">var authkey="' . \Current_User::getAuthkey() . '";</script>';
     \Layout::addJSHeader($script);
     $vars['authkey'] = \Current_User::getAuthKey();
     $template = new \Template($vars);
     $template->setModuleTemplate('properties', 'ManagerSignUp.html');
     $this->title = 'Contact Approval';
     $this->content = '<div id="ContactApproval"></div>';
 }
Exemplo n.º 18
0
 public static function arrangeForm()
 {
     $vars['action'] = 'admin';
     $template['MOVE_BOXES'] = '<button class="btn btn-primary" id="move-boxes">Move boxes</button>';
     $template['MOVE_BOXES_DESC'] = dgettext('layout', 'Allows you to shift content to other area of your layout. Movement options depend on the current theme.');
     $vars['command'] = 'reset_boxes';
     $template['RESET_BOXES'] = PHPWS_Text::secureLink(dgettext('layout', 'Reset boxes'), 'layout', $vars, null, null, 'btn btn-primary');
     $template['RESET_DESC'] = dgettext('layout', 'Resets all content back to its original location. Use if problems with Box Move occurred.');
     $vars['command'] = 'clear_templates';
     $template['CLEAR_TEMPLATES'] = PHPWS_Text::secureLink(dgettext('layout', 'Clear templates'), 'layout', $vars, null, null, 'btn btn-primary');
     $template['CLEAR_TEMPLATES_DESC'] = dgettext('layout', 'Removes all files from the current template cache directory. Good to try if your theme is not displaying properly.');
     $vars['command'] = 'clear_cache';
     $template['CLEAR_CACHE'] = PHPWS_Text::secureLink(dgettext('layout', 'Clear cache'), 'layout', $vars, null, null, 'btn btn-primary');
     $template['CLEAR_CACHE_DESC'] = dgettext('layout', 'Clears all Cache Lite files. Good to try if module updates do not display.');
     javascript('jquery');
     $script = '<script type="text/javascript" src="' . PHPWS_SOURCE_HTTP . 'mod/layout/javascript/move_boxes.js"></script>';
     \Layout::addJSHeader($script, 'moveboxes');
     $modal = new \Modal('box-move', '', 'Move boxes');
     $modal->sizeLarge();
     $template['MODAL'] = $modal->get();
     return PHPWS_Template::process($template, 'layout', 'arrange.tpl');
 }
Exemplo n.º 19
0
    /**
     * Lists the contents of a folder for adminstrative changes.
     * @param object $folder
     * @param boolean $pick_image
     */
    public function folderContents($folder)
    {
        $links = array();
        javascript('jquery');
        $src = PHPWS_SOURCE_HTTP . 'mod/filecabinet/javascript/folder_options/contents.js';
        \Layout::addJSHeader("<script type='text/javascript' src='{$src}'></script>", 'folder-options');
        Layout::addStyle('filecabinet');
        PHPWS_Core::initCoreClass('DBPager.php');
        $dir_write = true;
        if (!is_writable($folder->getFullDirectory())) {
            $this->cabinet->message .= dgettext('filecabinet', 'Warning: this folder\'s directory is not writable.');
            $dir_write = false;
        }
        if ($folder->ftype == IMAGE_FOLDER) {
            javascript('lightbox');
            PHPWS_Core::initModClass('filecabinet', 'Image.php');
            $pager = new DBPager('images', 'PHPWS_Image');
            $pager->setTemplate('Forms/image_grid.tpl');
            $limits[9] = 9;
            $limits[16] = 16;
            $limits[25] = 25;
            $operation = 'iop';
            $command = 'upload_image_form';
            $label = _('Add image');
        } elseif ($folder->ftype == DOCUMENT_FOLDER) {
            PHPWS_Core::initModClass('filecabinet', 'Document.php');
            $pager = new DBPager('documents', 'PHPWS_Document');
            $pager->setTemplate('Forms/file_list.tpl');
            $limits[10] = 10;
            $limits[25] = 25;
            $limits[50] = 50;
            $operation = 'dop';
            $label = _('Add document');
            $command = 'upload_document_form';
            $pager->addSortHeader('downloaded', sprintf('<abbr title="%s">%s</abbr>', dgettext('filecabinet', 'Downloaded'), dgettext('filecabinet', 'DL')));
        } elseif ($folder->ftype = MULTIMEDIA_FOLDER) {
            PHPWS_Core::initModClass('filecabinet', 'Multimedia.php');
            $pager = new DBPager('multimedia', 'PHPWS_Multimedia');
            $pager->setTemplate('Forms/multimedia_grid.tpl');
            $limits[9] = 9;
            $limits[16] = 16;
            $limits[25] = 25;
            $label = _('Add media');
            $command = 'upload_multimedia_form';
            $operation = 'mop';
        }
        if (Current_User::allow('filecabinet', 'edit_folders', $folder->id, 'folder')) {
            if ($dir_write) {
                $links[] = $folder->uploadLink('button');
            }
            if ($folder->ftype == MULTIMEDIA_FOLDER) {
                //$links[] = $folder->rtmpLink();
                $salt = array('mop' => 'edit_rtmp', 'folder_id' => $folder->id);
                $authkey = \Current_User::getAuthKey(PHPWS_Text::saltArray($salt));
                $links[] = <<<EOF
<button class="btn btn-default show-modal" data-authkey="{$authkey}" data-command="edit_rtmp" data-operation="{$operation}" data-folder-id="{$folder->id}"><i class="fa fa-cloud"></i> Add RTMP video</button>
EOF;
            }
            //$links[] = $folder->editLink();
            $salt = array($operation => 'edit_folder', 'folder_id' => $folder->id);
            $authkey = \Current_User::getAuthKey(PHPWS_Text::saltArray($salt));
            $links[] = <<<EOF
<button class="btn btn-default show-modal" data-authkey="{$authkey}" data-command="edit_folder_modal" data-operation="aop" data-folder-id="{$folder->id}"><i class="fa fa-edit"></i> Edit</button>
EOF;
        }
        if ($this->cabinet->panel) {
            $pagetags['BACK'] = PHPWS_Text::moduleLink('<i class="fa fa-reply"></i> ' . dgettext('filecabinet', 'Back to folder list'), 'filecabinet', array('tab' => $this->cabinet->panel->getCurrentTab()), null, null, 'btn btn-default');
        }
        if (!empty($links)) {
            $pagetags['ADMIN_LINKS'] = implode(' ', $links);
        }
        $pagetags['MODAL'] = $this->getModal();
        $pagetags['ACTION_LABEL'] = dgettext('filecabinet', 'Action');
        $pager->setLimitList($limits);
        $pager->setSearch('file_name', 'title', 'description');
        $pager->addWhere('folder_id', $folder->id);
        $pager->setOrder('title', 'asc', true);
        $pager->setModule('filecabinet');
        $pager->addPageTags($pagetags);
        $pager->addRowTags('rowTags');
        $pager->addSortHeader('title', dgettext('filecabinet', 'Title'));
        $pager->addSortHeader('file_name', dgettext('filecabinet', 'File name'));
        $pager->addSortHeader('file_type', dgettext('filecabinet', 'File type'));
        $pager->addSortHeader('size', dgettext('filecabinet', 'Size'));
        $pager->setEmptyMessage(dgettext('filecabinet', 'Folder is empty.'));
        $this->cabinet->content = $pager->get();
    }
Exemplo n.º 20
0
<?php

/**
 *
 * @author Matthew McNaney <mcnaney at gmail dot com>
 * @package Global
 * @license http://opensource.org/licenses/lgpl-3.0.html
 */
$_SESSION['ip'] = $_SERVER['REMOTE_ADDR'];
$_SESSION['ck_dir'] = dirname($_SERVER['PHP_SELF']) . '/images/filecabinet/';
$_SESSION['ck_http'] = dirname($_SERVER['PHP_SELF']) . '/images/filecabinet/';
$_SESSION['home_dir'] = PHPWS_HOME_DIR;
$_SESSION['source_dir'] = PHPWS_SOURCE_DIR;
$_SESSION['source_http'] = PHPWS_SOURCE_HTTP . 'javascript/ckeditor/filemanager/';
$_SESSION['logged'] = Current_User::isLogged();
$_SESSION['filecab'] = Current_User::allow('filecabinet');
$_SESSION['base_url'] = PHPWS_Core::getBaseURL();
$default['session_name'] = session_name();
$source_http = PHPWS_SOURCE_HTTP;
$session_name = session_name();
$header = <<<EOF
<script type="text/javascript" src="{$source_http}javascript/ckeditor/ckeditor.js"></script>
<script type="text/javascript">
var source_http = '{$source_http}';
var sn = '{$session_name}';
CKEDITOR.config.customConfig = '{$source_http}javascript/ckeditor/phpws_config.js';
</script>
EOF;
Layout::addJSHeader($header, 'ckeditor-head');
Exemplo n.º 21
0
 public function purge()
 {
     javascript('jquery');
     $script = PHPWS_SOURCE_HTTP . 'mod/pagesmith/javascript/purge/script.js';
     \Pager::prepare();
     \Layout::addJSHeader("<script type='text/javascript' src='{$script}'><script>");
     $template = new \Template();
     $template->setModuleTemplate('pagesmith', 'purge.html');
     $this->ps->title = 'Purge deleted pages';
     $this->ps->content = $template->get();
 }
Exemplo n.º 22
0
<?php

/**
 * @author Matthew McNaney <mcnaney at gmail dot com>
 * @version $Id: runtime.php 7776 2010-06-11 13:52:58Z jtickle $
 */
if (!class_exists('PHPWS_User')) {
    include '../../core/conf/404.html';
    exit;
}
if (isset($_REQUEST['module']) && $_REQUEST['module'] == 'users' && (isset($_REQUEST['action']) && $_REQUEST['action'] == 'reset')) {
    $_SESSION['User'] = new PHPWS_User();
} elseif (!isset($_SESSION['User'])) {
    Current_User::init();
    if (Current_User::allowRememberMe()) {
        if (PHPWS_Settings::get('users', 'allow_remember')) {
            Current_User::rememberLogin();
        }
    }
}
Current_User::loadAuthorization($_SESSION['User']);
Current_User::getLogin();
if (Current_User::isLogged() && PHPWS_Settings::get('users', 'session_warning')) {
    $lifetime = ini_get('session.gc_maxlifetime');
    $path = PHPWS_SOURCE_HTTP . 'mod/users/javascript/session_check/script.min.js';
    $timeout = floor($lifetime / 60);
    $warning_minutes = $timeout - 5;
    javascript('jquery');
    \Layout::addJSHeader("<script type='text/javascript'>var sess_expirationMinutes = {$timeout};var sess_warningMinutes = {$warning_minutes};</script>" . "<script type='text/javascript' src='{$path}'></script>");
}
Exemplo n.º 23
0
 private function newManagerSetup()
 {
     $development = false;
     if ($development) {
         $script_file = 'src/Signup.jsx';
         $type = 'text/jsx';
     } else {
         $script_file = 'build/Signup.js';
         $type = 'text/javascript';
     }
     $data['development'] = $development;
     $data['addons'] = true;
     javascript('react', $data);
     $script = '<script type="' . $type . '" src="' . PHPWS_SOURCE_HTTP . 'mod/properties/javascript/ManagerSignUp/' . $script_file . '"></script>';
     \Layout::addJSHeader($script);
     $vars['authkey'] = \Current_User::getAuthKey();
     $template = new \Template($vars);
     $template->setModuleTemplate('properties', 'ManagerSignUp.html');
     $this->title = 'New Manager Sign-Up';
     $this->content = $template->get();
 }
Exemplo n.º 24
0
 public static function includeEventJS()
 {
     javascript('jquery');
     self::includeAuthkey();
     $filename = PHPWS_SOURCE_HTTP . 'mod/calendar/javascript/event.js';
     $script = "<script type='text/javascript' src='{$filename}'></script>";
     \Layout::addJSHeader($script, 'cal_event');
 }
Exemplo n.º 25
0
 public static function categoryView()
 {
     $active_menu = self::getCurrentActiveMenu();
     if ($active_menu == 0) {
         $menu_tpl['home_active'] = 1;
     } else {
         $menu_tpl['home_active'] = 0;
     }
     $db = \Database::newDB();
     $m = $db->addTable('menus');
     $k = $db->addTable('phpws_key');
     $k->addField('url');
     $db->joinResources($m, $k, $db->createConditional($m->getField('assoc_key'), $k->getField('id'), '='), 'left');
     $m->addOrderBy($m->getField('queue'));
     $key = \Key::getCurrent();
     if ($key && $key->id) {
         $current_key_id = $key->id;
     } else {
         $current_key_id = -1;
     }
     $menus = $db->select();
     if (empty($menus)) {
         return;
     }
     foreach ($menus as $m) {
         $menu = new Menu_Item();
         PHPWS_Core::plugObject($menu, $m);
         $menu->_show_all = true;
         if (empty($menu->assoc_url)) {
             $menu->setAssocUrl($m['url']);
         }
         // if the current menu matches a used link (either by it being in the
         // in the menu or associated to it) mark as ACTIVE
         $active = $active_menu == $menu->id || $current_key_id == $menu->assoc_key ? 1 : 0;
         // if there is not an assoc key, them menu is using drop downs, so
         // we do not add the side menu
         if ($active) {
             if ($menu->assoc_key) {
                 Layout::set($menu->view(), 'menu', 'side');
             }
             if ($menu->assoc_image) {
                 Layout::set($menu->showAssocImage(), 'menu', 'image');
             }
         }
         $menu_tpl['menus'][] = self::getCategoryViewLine($menu, $active);
     }
     $template = new \Template($menu_tpl);
     \Layout::addJSHeader("<script type='text/javascript' src='" . PHPWS_SOURCE_HTTP . "javascript/responsive_img/responsive-img.min.js'></script>", 81);
     $template->setModuleTemplate('menu', 'category_view/category_menu.html');
     \Layout::add($template->get(), 'menu', 'top_view');
 }
Exemplo n.º 26
0
 public static function loadJavascriptFile($filename, $index, $data = NULL, $wrap_contents = false)
 {
     if (!is_file($filename)) {
         // Throw an exception because the file is missing.
         throw new Exception("Missing javascript file: {$filename}");
         return FALSE;
     }
     if (isset($data)) {
         $result = PHPWS_Template::process($data, 'layout', $filename, TRUE);
         if (empty($result)) {
             $result = file_get_contents($filename);
         }
     } else {
         $result = file_get_contents($filename);
     }
     if ($wrap_contents) {
         $result = "<script type='text/javascript'>{$result}</script>";
     }
     Layout::addJSHeader($result, $index);
 }
Exemplo n.º 27
0
<?php

/**
 * @license http://opensource.org/licenses/lgpl-3.0.html
 * @author Matthew McNaney <mcnaney at gmail dot com>
 */
$studentSearch = PHPWS_SOURCE_HTTP . 'mod/hms/javascript/studentSearch/script.js';
\Layout::addJSHeader('<script type="text/javascript" src="' . PHPWS_SOURCE_HTTP . 'mod/hms/bower_components/typeahead.js/dist/typeahead.bundle.js"></script>');
\Layout::addJSHeader("<script type='text/javascript' src='{$studentSearch}'></script>");
Exemplo n.º 28
0
 public static function import()
 {
     $source_http = PHPWS_SOURCE_HTTP;
     $script = "<script src='{$source_http}mod/rss/javascript/feed.js'></script>";
     javascript('jquery');
     \Layout::addJSHeader($script);
     PHPWS_Core::requireConfig('rss');
     if (!ini_get('allow_url_fopen')) {
         $tpl['TITLE'] = dgettext('rss', 'Sorry');
         $tpl['CONTENT'] = dgettext('rss', 'You must enable allow_url_fopen in your php.ini file.');
         return $tpl;
     }
     PHPWS_Core::initCoreClass('DBPager.php');
     PHPWS_Core::initModClass('rss', 'Feed.php');
     $content = NULL;
     $template['ADD_LINK'] = '<button class="btn btn-success edit-feed"><i></i> Add Feed</button>';
     /*
      $vars['address'] = 'index.php?module=rss&command=add_feed';
      $vars['label'] = dgettext('rss', 'Add feed');
      $vars['width'] = '450';
      $vars['height'] = '350';
      $template['ADD_LINK'] = javascript('open_window', $vars);
     * 
     */
     $template['TITLE_LABEL'] = dgettext('rss', 'Title');
     $template['ADDRESS_LABEL'] = dgettext('rss', 'Address');
     $template['DISPLAY_LABEL'] = dgettext('rss', 'Display?');
     $template['ACTION_LABEL'] = dgettext('rss', 'Action');
     $template['REFRESH_TIME_LABEL'] = dgettext('rss', 'Refresh feed');
     $modal = new \Modal('rss-modal');
     $modal->addButton('<button class="btn btn-primary" id="save-feed"><i class="fa fa-save"></i> Save</button>');
     $modal_content = RSS_Admin::editFeed();
     $modal->setContent($modal_content);
     $modal->setTitle('Edit feed');
     $modal->setWidthPixel('400');
     $template['MODAL'] = $modal->get();
     $pager = new DBPager('rss_feeds', 'RSS_Feed');
     $pager->setModule('rss');
     $pager->setTemplate('admin_feeds.tpl');
     $pager->addPageTags($template);
     $pager->addRowTags('pagerTags');
     $content = $pager->get();
     $tpl['TITLE'] = dgettext('rss', 'Import RSS Feeds');
     $tpl['CONTENT'] = $content;
     if (!defined('ALLOW_CACHE_LITE') || !ALLOW_CACHE_LITE) {
         $tpl['MESSAGE'] = dgettext('rss', 'Please enable Cache Lite in your config/core/config.php file.');
     }
     return $tpl;
 }
Exemplo n.º 29
0
    public static function form(\Request $request, $active_tab, $data)
    {
        include_once PHPWS_SOURCE_DIR . "mod/systemsinventory/config/device_types.php";
        $vars = array();
        $req_vars = $request->getRequestVars();
        $vars['title'] = '';
        $system_id = NULL;
        $command = $data['command'];
        $action = NULL;
        if (!empty($data['action'])) {
            $action = $data['action'];
        }
        if ($command == "editProfiles") {
            $message = "Profile Saved!";
            $template_name = 'Edit_Profile.html';
        } else {
            $message = "System Saved!";
            $template_name = 'Add_System.html';
        }
        javascript('jquery');
        \Form::requiredScript();
        if (!in_array($active_tab, array('systems-pc', 'ipad', 'printer', 'camera', 'digital-sign', 'time-clock'))) {
            $active_tab = 'systems-pc';
        }
        $js_string = <<<EOF
\t  <script type='text/javascript'>var active_tab = '{$active_tab}';</script> 
EOF;
        \Layout::addJSHeader($js_string);
        $script = PHPWS_SOURCE_HTTP . 'mod/systemsinventory/javascript/systems.js';
        \Layout::addJSHeader("<script type='text/javascript' src='{$script}'></script>");
        if ($action == 'success') {
            $vars['message'] = $message;
            $vars['display'] = 'display: block;';
        } else {
            $vars['message'] = '';
            $vars['display'] = 'display: none;';
        }
        $system_locations = SystemDevice::getSystemLocations();
        $location_options = '<option value="1">Select Location</opton>';
        foreach ($system_locations as $key => $val) {
            $location_options .= '<option value="' . $val['id'] . '">' . $val['display_name'] . '</option>';
        }
        $vars['locations'] = $location_options;
        $system_dep = SystemDevice::getSystemDepartments();
        $dep_optons = '<option value="1">Select Department</opton>';
        foreach ($system_dep as $val) {
            $dep_optons .= '<option value="' . $val['id'] . '">' . $val['display_name'] . '</option>';
        }
        $vars['departments'] = $dep_optons;
        $system_profiles = SystemDevice::getSystemProfiles();
        $profile_optons = $printer_profile_options = '<option value="1">Select Profile</opton>';
        if (!empty($system_profiles)) {
            foreach ($system_profiles as $val) {
                if ($val['device_type_id'] == PC) {
                    $profile_optons .= '<option value="' . $val['id'] . '">' . $val['profile_name'] . '</option>';
                } else {
                    $printer_profile_options .= '<option value="' . $val['id'] . '">' . $val['profile_name'] . '</option>';
                }
            }
        }
        $vars['profiles'] = $profile_optons;
        $vars['printer_profiles'] = $printer_profile_options;
        $vars['form_action'] = "./systemsinventory/system/" . $command;
        $template = new \Template($vars);
        $template->setModuleTemplate('systemsinventory', $template_name);
        return $template->get();
    }