GetToken() public static method

public static GetToken ( )
 /**
  * This is called when an interactive authentication attempt succeeds. This
  * is called by authentication listeners inheriting from AbstractAuthenticationListener.
  * @param  Request        $request
  * @param  TokenInterface $token
  * @return Response       The response to return
  */
 public function onAuthenticationSuccess(Request $request, TokenInterface $token)
 {
     $user = $token->getUser();
     // This should actually be handle by the AuthenticationFailedHandler
     if (!$user->isAdmin()) {
         // can't go into admin
         $request->getSession()->set(SecurityContextInterface::AUTHENTICATION_ERROR, new AuthenticationException('User is not an admin.'));
         return $this->httpUtils->createRedirectResponse($request, 'admin_login');
     }
     \LoginAttempts::DeleteOldLoginAttempts();
     \LoginAttempts::ClearLoginAttemptsForIp();
     $zendAuth = \Zend_Auth::getInstance();
     $this->authAdapter->setUsername($user->getUsername())->setPassword($request->request->get('_password'))->setAdmin(true);
     $zendAuth->authenticate($this->authAdapter);
     $OAuthtoken = $this->userService->loginUser($user, 'oauth_authorize');
     $session = $request->getSession();
     $session->set('_security_oauth_authorize', serialize($OAuthtoken));
     $frontendToken = $this->userService->loginUser($user, 'frontend_area');
     $session = $request->getSession();
     $session->set('_security_frontend_area', serialize($frontendToken));
     \Article::UnlockByUser($user->getId());
     $request->setLocale($request->request->get('login_language'));
     $this->setNoCacheCookie($request);
     $user->setLastLogin(new \DateTime());
     $this->em->flush();
     if ($request->get('ajax') === 'true') {
         // close popup with login.
         return new Response("<script type=\"text/javascript\">window.parent.g_security_token = '" . \SecurityToken::GetToken() . "';window.parent.\$(window.parent.document.body).data('loginDialog').dialog('close');window.parent.setSecurityToken(window.parent.g_security_token);</script>");
     }
     return parent::onAuthenticationSuccess($request, $token);
 }
Exemplo n.º 2
0
 public function getGlobals()
 {
     global $Campsite;
     $localeFromCookie = 'en';
     if ($this->request) {
         $localeFromCookie = $this->request->cookies->has('TOL_Language') == true ? $this->request->cookies->get('TOL_Language') : 'en';
     }
     try {
         $currentUser = $this->container->getService('user')->getCurrentUser();
     } catch (AuthenticationException $e) {
         $currentUser = null;
     }
     return array('Newscoop' => $Campsite, 'NewscoopVersion' => new \CampVersion(), 'SecurityToken' => \SecurityToken::GetToken(), 'NewscoopUser' => $currentUser, 'localeFromCookie' => $localeFromCookie);
 }
Exemplo n.º 3
0
    unset($access);
    unset($extension);
    unset($extension_start);
    unset($question_mark);
    unset($no_menu_scripts);
    unset($request_uri);

    // Restore POST request
    $requestId = Input::Get('request', 'string', '', TRUE);
    $request = camp_session_get("request_$requestId", '');
    if (!empty($request)) {
        $request = unserialize($request);

        // Update security token.
        $token_field = SecurityToken::SECURITY_TOKEN;
        $request['post'][$token_field] = SecurityToken::GetToken();

        // Set values.
        foreach ($request['post'] as $key => $val) {
            $_POST[$key] = $_REQUEST[$key] = $val;
        }
    }

    if (file_exists($Campsite['HTML_DIR'] . '/reset_cache')) {
        CampCache::singleton()->clear('user');
        unlink($GLOBALS['g_campsiteDir'] . '/reset_cache');
    }
    require_once($Campsite['HTML_DIR'] . "/$ADMIN_DIR/init_content.php");

    // Get the main content
    ob_start();
Exemplo n.º 4
0
    <!--[if IE 6]>
    <style type="text/css">
        .fg-menu-ipod .fg-menu li { width: 95%; }
        .fg-menu-ipod .ui-widget-content { border:0; }
    </style>
    <![endif]-->

  <script type="text/javascript">
  <!--
    var g_admin_url = '/<?php 
echo $ADMIN;
?>
';
    var g_security_token = '<?php 
echo SecurityToken::GetToken();
?>
';
    <?php 
if (strpos($_SERVER['HTTP_REFERER'], 'login.php') !== FALSE) {
    ?>
    if (opener && !opener.closed && opener.setSecurityToken) {
        opener.setSecurityToken(g_security_token);
        opener.focus();
        window.close();
    }
    <?php 
}
?>
    var g_admin_img = '<?php 
echo $Campsite["ADMIN_IMAGE_BASE_URL"];
Exemplo n.º 5
0
    <link rel="stylesheet" type="text/css" href="<?php echo $Campsite['ADMIN_STYLE_URL']; ?>/admin_stylesheet.css" />
    <link rel="stylesheet" type="text/css" href="<?php echo $Campsite['ADMIN_STYLE_URL']; ?>/ColVis.css" />
    <style>
        body, #tabs { background-color: #f5f5f5; }
        #tabs { border: none; }
    </style>

    <?php include_once($GLOBALS['g_campsiteDir']."/$ADMIN_DIR/javascript_common.php"); ?>
    <script src="<?php echo $Campsite['WEBSITE_URL']; ?>/js/jquery/jquery-1.4.2.min.js" type="text/javascript"></script>
    <script src="<?php echo $Campsite['WEBSITE_URL']; ?>/js/jquery/jquery.dataTables.min.js" type="text/javascript"></script>
    <script src="<?php echo $Campsite['WEBSITE_URL']; ?>/js/jquery/ColVis.min.js" type="text/javascript"></script>
    <script src="<?php echo $Campsite['WEBSITE_URL']; ?>/js/jquery/jquery-ui-1.8.6.custom.min.js" type="text/javascript"></script>
    <script src="<?php echo $Campsite['WEBSITE_URL']; ?>/js/admin.js" type="text/javascript"></script>
    <script type="text/javascript">
        var g_admin_url = '/<?php echo $ADMIN; ?>';
        var g_security_token = '<?php echo SecurityToken::GetToken(); ?>';
        var g_admin_img = '<?php echo $Campsite["ADMIN_IMAGE_BASE_URL"]; ?>';
        var popupFlash = false;

        var localizer = localizer || {};
        localizer.processing = '<?php putGS('Processing...'); ?>';
        localizer.session_expired = '<?php putGS('Session expired.'); ?>';
        localizer.please = '<?php putGS('Please'); ?>';
        localizer.login = '******'login'); ?>';

        $(function() {
            $('#tabs').tabs();
        });
    </script>
</head>
<body>
Exemplo n.º 6
0
 private function setToken()
 {
     $_REQUEST[SecurityToken::SECURITY_TOKEN] = SecurityToken::GetToken();
 }
Exemplo n.º 7
0
    private function getFormMask($p_role)
    {
        $data = $this->m_data;

        $mask = array(
            array(
                'element'   => 'action',
                'type'      => 'hidden',
                'constant'  => $this->exists() ? 'interviewitem_edit' : 'interviewitem_create'
            ),
            SecurityToken::SECURITY_TOKEN => array(
            	'element'   => SecurityToken::SECURITY_TOKEN,
            	'type'      => 'hidden',
            	'constant'  => SecurityToken::GetToken()
            ),
            array(
                'element'   => 'f_interview_id',
                'type'      => 'hidden',
                'constant'  => $data['fk_interview_id']
            ),
            array(
                'element'   => 'f_item_id',
                'type'      => 'hidden',
                'constant'  => $data['item_id']
            ),
            array(
                'element'   => 'fk_questioneer_user_id',
                'type'      => 'hidden',
                'constant'  => $data['fk_questioneer_user_id']
            ),
            array(
                'element'   => 'f_question',
                'type'      => 'textarea',
                'label'     => getGS('Question'),
                'default'   => $data['question'],
                'required'  => $p_role == 'admin' || $p_role == 'moderator' ? true : false,
                'attributes'=> $p_role == 'admin' || $p_role == 'moderator' ? false : array('readonly', 'disabled')
            ),
            array(
                'element'   => 'f_answer',
                'type'      => 'textarea',
                'label'     => getGS('Answer'),
                'default'   => $data['answer'],
                'required'  => $p_role == 'guest' ? true : false,
                'attributes'=> $p_role == 'admin' || $p_role == 'guest' ? false : array('readonly', 'disabled')
            ),
            $p_role == 'admin' || $p_role == 'moderator' ?
                array(
                    'element'   => 'f_status',
                    'type'      => 'select',
                    'label'     => getGS('Status'),
                    'default'   => $data['status'],
                    'options'=> array(
                        'draft'     => getGS('draft'),
                        'pending'   => getGS('pending'),
                        'published' => getGS('published'),
                        'rejected'   => getGS('rejected')
                    )
                )
                : (
                    $p_role == 'guest' && $data['status'] == 'pending' ?
                        array(
                            'element'   => 'f_status',
                            'type'      => 'hidden',
                            'constant'  => 'published',
                        )
                        :
                        null
                  ),
            array(
                'element'   => 'f_reset',
                'type'      => 'reset',
                'label'     => getGS('Reset'),
                'groupit'   => true
            ),
            array(
                'element'   => 'f_submit',
                'type'      => 'submit',
                'label'     => getGS('Save'),
                'groupit'   => true
            ),
            array(
                'element'   => 'f_cancel',
                'type'      => 'button',
                'label'     => getGS('Cancel'),
                'attributes' => array('onClick' => 'window.close()'),
                'groupit'   => true
            ),
            array(
                'group'     => array('f_reset', 'f_cancel', 'f_submit')
            )
        );

        return $mask;
    }
Exemplo n.º 8
0
            $_POST[SecurityToken::SECURITY_TOKEN] = SecurityToken::GetToken();
        }
        // fix uri
        $_SERVER['REQUEST_URI'] = $this->getRequest()->getRequestUri();
        // reset view
        $this->view->legacy = NULL;
        $this->_helper->layout->enableLayout();
        // redirect/forward
        if (!empty($_POST['_next']) && $_POST['_next'] == 'post') {
            // forward POST request
            $this->_forward($this->_getParam('action'), $this->_getParam('controller'), 'admin');
        } else {
            // redirect GET request
            setcookie("TOL_Language", $f_login_language);
            if (array_key_exists(SecurityToken::SECURITY_TOKEN, $_GET)) {
                $_SERVER['REQUEST_URI'] .= sprintf('&%s=%s', SecurityToken::SECURITY_TOKEN, SecurityToken::GetToken());
            }
            $this->_redirect($_SERVER['REQUEST_URI'], array('prependBase' => false));
        }
        return;
    }
}
//
// Invalid logins start here.
//
// Record the attempt
LoginAttempts::RecordLoginAttempt();
// CAPTCHA invalid -> captcha login page
if ($validateCaptcha && !PhpCaptcha::Validate($f_captcha_code, true)) {
    return 'captcha';
}
Exemplo n.º 9
0
    function _getFormMask($p_admin)
    {
        global $g_user;

        $data = $this->getData();

        foreach ($data as $k => $v) {
            // clean user input
            if (!in_array($k, self::$m_html_allowed_fields)) {
                $data[$k] = camp_html_entity_decode_array($v);
            }
        }

        $languageSelectedObj = new Language($data['fk_language_id']);
        $editorLanguage = !empty($_COOKIE['TOL_Language']) ? $_COOKIE['TOL_Language'] : $languageSelectedObj->getCode();


        $mask = array(
            'f_entry_id'    => array(
                'element'   => 'f_entry_id',
                'type'      => 'hidden',
                'constant'  => $data['entry_id']
            ),
            SecurityToken::SECURITY_TOKEN => array(
            	'element'   => SecurityToken::SECURITY_TOKEN,
            	'type'      => 'hidden',
            	'constant'  => SecurityToken::GetToken()
            ),
            'f_blog_id'    => array(
                'element'   => 'f_blog_id',
                'type'      => 'hidden',
                'constant'  => $data['fk_blog_id']
            ),
            'tiny_mce'  => array(
                'element'   => 'tiny_mce',
                'text'      => Blog::GetEditor('tiny_mce_box', $g_user, $editorLanguage),
                'type'  => 'static'
            ),
            'title'     => array(
                'element'   => 'BlogEntry[title]',
                'type'      => 'text',
                'label'     => getGS('Title'),
                'default'   => $data['title'],
                'required'  => true
            ),
            'content'      => array(
                'element'   => 'BlogEntry[content]',
                'type'      => 'textarea',
                'label'     => getGS('Content'),
                'default'   => $data['content'],
                'required'  => true,
                'attributes'=> array('cols' => 86, 'rows' => 16, 'id' => 'tiny_mce_box', 'class' => 'tinymce')
            ),
            'status' => array(
                'element'   => 'BlogEntry[status]',
                'type'      => 'select',
                'label'     => getGS('Status'),
                'default'   => $data['status'],
                'options'   => array(
                    'online'    => 'online',
                    'offline'   => 'offline'
                ),
                'required'  => true
            ),
            'admin_status' => array(
                'element'   => 'BlogEntry[admin_status]',
                'type'      => 'select',
                'label'     => getGS('Admin status'),
                'default'   => $data['admin_status'],
                'options'   => array(
                    'online'    => 'online',
                    'offline'   => 'offline',
                    'pending'   => 'pending',
                ),
                'required'  => true
            ),
            'mood'      => array(
                'element'   => 'BlogEntry[fk_mood_id]',
                'type'      => 'select',
                'label'     => getGS('Mood'),
                'default'   => $data['fk_mood_id'],
                'options'   => Blog::GetMoodList(!empty($data['fk_laguage_id']) ? $data['fk_laguage_id'] : Blog::GetBlogLanguageId($data['fk_blog_id']))
            ),
            'image'     => array(
                'element'   => 'BlogEntry_Image',
                'type'      => 'file',
                'label'     => getGS('Image (.jpg, .png, .gif)'),
            ),
            'image_display'  => array(
                'element'   => 'image_display',
                'text'      => '<img src="'.$data['images']['100x100'].'">',
                'type'  => 'static',
                'groupit'   => true
            ),
            'image_remove' => array(
                'element'   => 'BlogEntry_Image_remove',
                'type'      => 'checkbox',
                'label'     => getGS('Remove this Image'),
                'groupit'   => true
            ),
            'image_label'  => array(
                'element'   => 'image_label',
                'text'      => getGS('Remove this image'),
                'type'      => 'static',
                'groupit'   => true
            ),
            'image_group' =>  isset($data['images']['100x100']) ? array(
                'group'     => array('image_display', 'BlogEntry_Image_remove', 'image_label'),

            ) : null,
            'reset'     => array(
                'element'   => 'reset',
                'type'      => 'reset',
                'label'     => getGS('Reset'),
                'groupit'   => true
            ),
            'xsubmit'     => array(
                'element'   => 'xsubmit',
                'type'      => 'button',
                'label'     => getGS('Submit'),
                'attributes'=> array('onclick' => 'tinyMCE.triggerSave(); if (this.form.onsubmit()) this.form.submit()'),
                'groupit'   => true
            ),
            'cancel'     => array(
                'element'   => 'cancel',
                'type'      => 'button',
                'label'     => getGS('Cancel'),
                'attributes' => array('onClick' => 'window.close()'),
                'groupit'   => true
            ),
            'buttons'   => array(
                'group'     => array('cancel', 'reset', 'xsubmit')
            )
        );

        return $mask;
    }
Exemplo n.º 10
0
    function _getFormMask($p_admin=false, $p_owner=false)
    {
        $mask = array(
            'f_comment_id' => array(
                'element'   => 'f_comment_id',
                'type'      => 'hidden',
                'constant'  => $this->getProperty('comment_id'),
            ),
            'f_entry_id' => array(
                'element'   => 'f_entry_id',
                'type'      => 'hidden',
                'constant'  => $this->getProperty('fk_entry_id'),
            ),
            SecurityToken::SECURITY_TOKEN => array(
            	'element'   => SecurityToken::SECURITY_TOKEN,
            	'type'      => 'hidden',
            	'constant'  => SecurityToken::GetToken()
            ),
            /*
            'tiny_mce'  => array(
                'element'   => 'tiny_mce',
                'text'      => '<script language="javascript" type="text/javascript" src="/javascript/tinymce/tiny_mce.js"></script>'.
                               '<script language="javascript" type="text/javascript">'.
                               '     tinyMCE.init({'.
                               '     	mode : "exact",'.
                               '        elements : "tiny_mce_box",'.
                               '        theme : "advanced",'.
                               '        plugins : "emotions, paste", '.
                               '        paste_auto_cleanup_on_paste : true, '.
                               '        theme_advanced_buttons1 : "bold, italic, underline, undo, redo, link, emotions", '.
                               '        theme_advanced_buttons2 : "", '.
                               '        theme_advanced_buttons3 : "" '.
                               '     });'.
                               '</script>',
                'type'      => 'static'
            ),
            */
            'title'     => array(
                'element'   => 'BlogComment[title]',
                'type'      => 'text',
                'label'     => getGS('Title'),
                'default'   => html_entity_decode($this->getProperty('title'))
            ),
            'user_name'     => array(
                'element'   => 'BlogComment[user_name]',
                'type'      => 'text',
                'label'     => getGS('Poster name'),
                'default'   => html_entity_decode($this->getProperty('user_name'))
            ),
            'user_email'     => array(
                'element'   => 'BlogComment[user_email]',
                'type'      => 'text',
                'label'     => getGS('EMail'),
                'default'   => html_entity_decode($this->getProperty('user_email'))
            ),
            'content'      => array(
                'element'   => 'BlogComment[content]',
                'type'      => 'textarea',
                'label'     => getGS('Comment'),
                'default'   => $this->getProperty('content'),
                'required'  => true,
                'attributes'=> array('cols' => 60, 'rows' => 8, 'id' => 'tiny_mce_box')
            ),
            'mood'      => array(
                'element'   => 'BlogComment[fk_mood_id]',
                'type'      => 'select',
                'label'     => getGS('Mood'),
                'default'   => $this->getProperty('fk_mood_id'),
                'options'   => Blog::GetMoodList($this->getProperty('fk_language_id') ?
                                    $this->getProperty('fk_language_id') :
                                    BlogEntry::GetEntryLanguageId($this->getProperty('fk_entry_id')))
            ),
            'status' => array(
                'element'   => 'BlogComment[status]',
                'type'      => 'select',
                'label'     => getGS('Status'),
                'default'   => $this->getProperty('status'),
                'options'   => array(
                                'online'    => getGS('online'),
                                'offline'   => getGS('offline'),
                                'pending'   => getGS('pending')
                               ),
                'required'  => true
            ),
            'admin_status' => array(
                'element'   => 'BlogComment[admin_status]',
                'type'      => 'select',
                'label'     => getGS('Admin status'),
                'default'   => $this->getProperty('admin_status'),
                'options'   => array(
                                'pending'   => getGS('pending'),
                                'online'    => getGS('online'),
                                'offline'   => getGS('offline'),
                               ),
                'required'  => true
            ),
            'reset'     => array(
                'element'   => 'reset',
                'type'      => 'reset',
                'label'     => getGS('Reset'),
                'groupit'   => true
            ),
            'xsubmit'     => array(
                'element'   => 'xsubmit',
                'type'      => 'button',
                'label'     => getGS('Submit'),
                'attributes'=> array('onclick' => 'if (this.form.onsubmit()) this.form.submit()'),
                'groupit'   => true
            ),
            'cancel'     => array(
                'element'   => 'cancel',
                'type'      => 'button',
                'label'     => getGS('Cancel'),
                'attributes' => array('onClick' => 'window.close()'),
                'groupit'   => true
            ),
            'buttons'   => array(
                'group'     => array('cancel', 'reset', 'xsubmit')
            )
        );

        return $mask;
    }
Exemplo n.º 11
0
    }

    if ($isError) {
	    camp_html_display_error($message, null, true);
        exit;
    }

    camp_html_add_msg($message);
}

if (empty($_POST)) {
    setMessage(getGS('The file exceeds the allowed max file size.'), TRUE);
}

if (!SecurityToken::isValid()) {
    setMessage(SecurityToken::GetToken(), TRUE);
    setMessage(getGS('Invalid security token!'), TRUE);
}

if (!$g_user->hasPermission('AddFile')) {
    setMessage(getGS('You do not have the right to add files.'), TRUE);
}

// We set to unlimit the maximum time to execution whether
// safe_mode is disabled. Upload is still under control of
// max upload size.
if (!ini_get('safe_mode')) {
	set_time_limit(0);
}

$inArchive = !empty($_REQUEST['archive']);
Exemplo n.º 12
0
    private function getInvitationFormMask($p_preview = false, &$p_userid = null)
    {
        global $Campsite;

        $data = $this->m_data;

        if ($p_preview) {

            $MetaInterview = new MetaInterview($this->getId());
            $MetaUser = new MetaUser($p_userid);
            $guest_text = $this->smarty_parse_inviation_template($MetaInterview, $MetaUser, 'guest');
            $questioneer_text = $this->smarty_parse_inviation_template($MetaInterview, $MetaUser, 'questioneer');
        }

        $mask = array(
            array(
                    'element'   => 'f_interview_id',
                    'type'      => 'hidden',
                    'constant'  => $data['interview_id']
            ),
            SecurityToken::SECURITY_TOKEN => array(
            	'element'   => SecurityToken::SECURITY_TOKEN,
            	'type'      => 'hidden',
            	'constant'  => SecurityToken::GetToken()
            ),
            isset($p_preview) ?
                array(
                    'element'   => 'f_sender',
                    'type'      => 'text',
                    'label'     => getGS('Sender'),
                    'default'   => $data['invitation_sender'],
                    'attributes'=> array('disabled' => true, 'readonly' => true),
                ) : null,
            isset($p_preview) ?
                array(
                    'element'   => 'f_subject',
                    'type'      => 'text',
                    'label'     => getGS('Subject'),
                    'default'   => $data['invitation_subject'],
                    'attributes'=> array('disabled' => true, 'readonly' => true),
                ) : null,
            isset($p_preview) ?
                array(
                    'element'   => 'f_invitation_preview_guest',
                    'type'      => 'static',
                    'label'     => getGS('Guest preview text'),
                    'default'   => $guest_text,
                    'attributes'=> array('cols' => 70, 'rows' => 12, 'disabled' => true, 'readonly' => true),
                ) : null,
            isset($p_preview) ?
                array(
                    'element'   => 'f_invitation_preview_questioneer',
                    'type'      => 'static',
                    'label'     => getGS('Questioneer preview text'),
                    'default'   => $questioneer_text,
                    'attributes'=> array('cols' => 70, 'rows' => 12, 'disabled' => true, 'readonly' => true),
                ) : null,
            isset($p_preview) ? null :
                array(
                    'element'   => 'f_invitation_sender',
                    'type'      => 'text',
                    'label'     => getGS('Sender'),
                    'default'   => $data['invitation_sender'],
                    'required'  => true
                ),
            isset($p_preview) ? null :
                array(
                    'element'   => 'f_invitation_subject',
                    'type'      => 'text',
                    'label'     => getGS('Subject'),
                    'default'   => $data['invitation_subject'],
                    'required'  => true
                ),
            isset($p_preview) ? null :
                array(
                'element'   => 'tiny_mce',
                'text'      => '<script language="javascript" type="text/javascript" src="' . $Campsite['WEBSITE_URL'] . '/javascript/tinymce/tiny_mce.js"></script>'.
                               '<script language="javascript" type="text/javascript">'.
                               '     tinyMCE.init({'.
                               '     	mode : "exact",'.
                               '        elements : "f_invitation_template_guest, f_invitation_template_questioneer",'.
                               '        entity_encoding : "raw",'.
                               '        relative_urls : false,'.
                               '        convert_urls : false,'.
                               '        theme : "advanced",'.
                               '        plugins : "emotions, paste", '.
                               '        paste_auto_cleanup_on_paste : true, '.
                               '        theme_advanced_buttons1 : "bold, italic, underline, undo, redo, link", '.
                               '        theme_advanced_buttons2 : "", '.
                               '        theme_advanced_buttons3 : "" '.
                               '     });'.
                               '</script>',
                'type'      => 'static'
            ),
            isset($p_preview) ? null :
                array(
                    'element'   => 'f_invitation_template_guest',
                    'type'      => 'textarea',
                    'label'     => getGS('Invitation Template for Guest').'<br><a href="">Help</a>',
                    'default'   => $data['invitation_template_guest'],
                    'required'  => true,
                    'attributes'=> array('cols' => 70, 'rows' => 12, 'id' => 'f_invitation_template_guest'),
                ),
           isset($p_preview) ? null : array(
                    'element'   => 'f_invitation_template_questioneer',
                    'type'      => 'textarea',
                    'label'     => getGS('Invitation Template for Questioneer').'<br><a href="">Help</a>',
                    'default'   => $data['invitation_template_questioneer'],
                    'required'  => true,
                    'attributes'=> array('cols' => 70, 'rows' => 12, 'id' => 'f_invitation_template_questioneer'),
                ),
            $this->getProperty('guest_invitation_sent') !== null ?
                array(
                    'element'   => 'f_warning',
                    'type'      => 'static',
                    'text'  => '<font color="red"><b>'.getGS('Invitation to interview guest has already been sent at $1', $this->getProperty('guest_invitation_sent')).'</b></font>'
                ) : null,
            $this->getProperty('questioneer_invitation_sent') !== null ?
                array(
                    'element'   => 'f_warning',
                    'type'      => 'static',
                    'text'  => '<font color="red"><b>'.getGS('Invitations to questioneers has already been sent at $1', $this->getProperty('questioneer_invitation_sent')).'</b></font>'
                ) : null,
            array(
                'element'   => 'f_reset',
                'type'      => 'reset',
                'label'     => getGS('Reset'),
                'groupit'   => true
            ),
            array(
                'element'   => 'f_edit',
                'type'      => 'button',
                'label'     => getGS('Edit'),
                'attributes' => array('onClick' => 'location.href="?f_interview_id='.$this->getId().'"'),
                'groupit'   => true
            ),
            array(
                'element'   => 'f_preview',
                'type'      => 'submit',
                'label'     => getGS('Preview'),
                'groupit'   => true
            ),
            array(
                'element'   => 'f_invite_now',
                'type'      => 'submit',
                'label'     => getGS('Invite Now'),
                'groupit'   => true
            ),
            array(
                'element'   => 'f_cancel',
                'type'      => 'button',
                'label'     => getGS('Cancel'),
                'attributes' => array('onClick' => 'window.close()'),
                'groupit'   => true
            ),
            isset($p_preview) ?
                array(
                    'group'     => array('f_cancel', 'f_edit', 'f_invite_now')
                )
                :
                array(
                    'group'     => array('f_cancel', 'f_reset', 'f_preview')
                )
        );

        return $mask;
    }
Exemplo n.º 13
0
    private function getFormMask($p_owner=false, $p_admin=false)
    {
        global $g_user;

        $data = $this->getData();

        foreach (User::GetUsers() as $User) {
            if (1 || $User->hasPermission('PLUGIN_BLOG_USER')) {
                $ownerList[$User->getUserId()] = "{$User->getRealName()} ({$User->getUserName()})";
            }
        }
        asort($ownerList);

        $languageList = array('' => getGS("---Select language---"));
        foreach (Language::GetLanguages() as $Language) {
            $languageList[$Language->getLanguageId()] = $Language->getNativeName();
        }
        asort($languageList);

        foreach ($data as $k => $v) {
            // clean user input
            if (!in_array($k, self::$m_html_allowed_fields)) {
                $data[$k] = camp_html_entity_decode_array($v);
            }
        }

        // load possible topic list
        foreach ($this->GetTopicTreeFlat() as $topicId => $topicName) {
            $topics[$topicId]  = $topicName;
        }

        // get the topics used
        foreach ($this->getTopics() as $Topic) {
            $active_topics[$Topic->getTopicId()] = $Topic->getName($this->getLanguageId());
        }

        $languageSelectedObj = new Language($data['fk_language_id']);
        $editorLanguage = !empty($_COOKIE['TOL_Language']) ? $_COOKIE['TOL_Language'] : $languageSelectedObj->getCode();

        $mask = array(
            'f_blog_id'    => array(
                'element'   => 'f_blog_id',
                'type'      => 'hidden',
                'constant'  => $data['blog_id']
            ),
            SecurityToken::SECURITY_TOKEN => array(
            	'element'   => SecurityToken::SECURITY_TOKEN,
            	'type'      => 'hidden',
            	'constant'  => SecurityToken::GetToken()
            ),
            'language' => array(
                    'element'   => 'Blog[fk_language_id]',
                    'type'      => 'select',
                    'label'     => getGS('Language'),
                    'default'   => $data['fk_language_id'],
                    'options'   => $languageList,
                    'required'  => true
            ),
            'title'     => array(
                'element'   => 'Blog[title]',
                'type'      => 'text',
                'label'     => getGS('Title'),
                'default'   => $data['title'],
                'required'  => true
            ),
            'tiny_mce'  => array(
                'element'   => 'tiny_mce',
                'text'      => self::GetEditor('tiny_mce_box', $g_user, $editorLanguage),
                'type'      => 'static'
            ),
            'info'      => array(
                'element'   => 'Blog[info]',
                'type'      => 'textarea',
                'label'     => getGS('Info'),
                'default'   => $data['info'],
                'required'  => true,
                'attributes'=> array('cols' => 86, 'rows' => 16, 'id' => 'tiny_mce_box', 'class' => 'tinymce')
            ),
            'feature'     => array(
                'element'   => 'Blog[feature]',
                'type'      => 'text',
                'label'     => getGS('Feature'),
                'default'   => $data['feature'],
            ),
            'status' => array(
                'element'   => 'Blog[status]',
                'type'      => 'select',
                'label'     => getGS('Status'),
                'default'   => $data['status'],
                'required'  => true,
                'options'   => array(
                    'online'        => getGS('online'),
                    'offline'       => getGS('offline'),
                    'moderated'     => getGS('moderated'),
                    'readonly'      => getGS('read only'),
                ),

            ),
            'admin_status' => array(
                'element'   => 'Blog[admin_status]',
                'type'      => 'select',
                'label'     => getGS('Admin status'),
                'default'   => $data['admin_status'],
                'required'  => true,
                'options'   => array(
                    'online'        => getGS('online'),
                    'offline'       => getGS('offline'),
                    'pending'       => getGS('pending'),
                    'moderated'     => getGS('moderated'),
                    'readonly'      => getGS('read only'),
                ),
            ),
            'owner' => array(
                    'element'   => 'Blog[fk_user_id]',
                    'type'      => 'select',
                    'label'     => getGS('Owner'),
                    'default'   => $data['fk_user_id'],
                    'options'   => $ownerList,
            ),
            'image'     => array(
                'element'   => 'Blog_Image',
                'type'      => 'file',
                'label'     => getGS('Image (.jpg, .png, .gif)'),
            ),
            'image_display'  => array(
                'element'   => 'image_display',
                'text'      => '<img src="'.$data['images']['100x100'].'">',
                'type'  => 'static',
                'groupit'   => true
            ),
            'image_remove' => array(
                'element'   => 'Blog_Image_remove',
                'type'      => 'checkbox',
                'label'     => getGS('Remove this image'),
                'groupit'   => true
            ),
            'image_label'  => array(
                'element'   => 'image_label',
                'text'      => getGS('Remove this image'),
                'type'  => 'static',
                'groupit'   => true
            ),
            'image_group' =>  isset($data['images']['100x100']) ? array(
                'group'     => array('image_display', 'Blog_Image_remove', 'image_label'),

            ) : null,
            'admin_remark'      => array(
                'element'   => 'Blog[admin_remark]',
                'type'      => 'textarea',
                'label'     => getGS('Admin remark'),
                'default'   => $data['admin_remark'],
                'attributes'=> array('cols' => 86, 'rows' => 10)
            ),
            'reset'     => array(
                'element'   => 'reset',
                'type'      => 'reset',
                'label'     => getGS('Reset'),
                'groupit'   => true
            ),
            'xsubmit'     => array(
                'element'   => 'xsubmit',
                'type'      => 'button',
                'label'     => getGS('Submit'),
                'attributes'=> array('onclick' => 'tinyMCE.triggerSave(); if (this.form.onsubmit()) this.form.submit()'),
                'groupit'   => true
            ),
            'cancel'     => array(
                'element'   => 'cancel',
                'type'      => 'button',
                'label'     => getGS('Cancel'),
                'attributes' => array('onClick' => 'window.close()'),
                'groupit'   => true
            ),
            'buttons'   => array(
                'group'     => array('cancel', 'reset', 'xsubmit')
            )
        );

        return $mask;
    }