Пример #1
0
function sendAskedQuestion($username, $usermail, $usercat, $content)
{
    global $IDN, $category, $PMF_LANG, $faq, $faqconfig;
    $retval = false;
    $cat = new PMF_Category();
    $categories = $cat->getAllCategories();
    if ($faqconfig->get('records.enableVisibilityQuestions')) {
        $visibility = 'N';
    } else {
        $visibility = 'Y';
    }
    $questionData = array('ask_username' => $username, 'ask_usermail' => $IDN->encode($usermail), 'ask_category' => $usercat, 'ask_content' => $content, 'ask_date' => date('YmdHis'), 'is_visible' => $visibility);
    list($user, $host) = explode("@", $questionData['ask_usermail']);
    if (PMF_Filter::filterVar($questionData['ask_usermail'], FILTER_VALIDATE_EMAIL) != false) {
        $faq->addQuestion($questionData);
        $questionMail = "User: "******", mailto:" . $questionData['ask_usermail'] . "\n" . $PMF_LANG["msgCategory"] . ": " . $categories[$questionData['ask_category']]["name"] . "\n\n" . wordwrap($content, 72);
        $userId = $category->getCategoryUser($questionData['ask_category']);
        $oUser = new PMF_User();
        $oUser->getUserById($userId);
        $userEmail = $oUser->getUserData('email');
        $mainAdminEmail = $faqconfig->get('main.administrationMail');
        $mail = new PMF_Mail();
        $mail->unsetFrom();
        $mail->setFrom($questionData['ask_usermail'], $questionData['ask_username']);
        $mail->addTo($mainAdminEmail);
        // Let the category owner get a copy of the message
        if ($userEmail && $mainAdminEmail != $userEmail) {
            $mail->addCc($userEmail);
        }
        $mail->subject = '%sitename%';
        $mail->message = $questionMail;
        $retval = $mail->send();
    }
    return $retval;
}
Пример #2
0
function sendAskedQuestion($username, $usermail, $usercat, $content)
{
    global $PMF_LANG, $faq;
    $retval = false;
    $faqconfig = PMF_Configuration::getInstance();
    $categoryNode = new PMF_Category_Node();
    if ($faqconfig->get('records.enableVisibilityQuestions')) {
        $visibility = 'N';
    } else {
        $visibility = 'Y';
    }
    $questionData = array('id' => null, 'username' => $username, 'email' => $usermail, 'category_id' => $usercat, 'question' => $content, 'date' => date('YmdHis'), 'is_visible' => $visibility);
    list($user, $host) = explode("@", $questionData['email']);
    if (PMF_Filter::filterVar($questionData['email'], FILTER_VALIDATE_EMAIL) != false) {
        $faqQuestions = new PMF_Faq_Questions();
        $faqQuestions->create($questionData);
        $categoryData = $categoryNode->fetch($questionData['category_id']);
        $questionMail = "User: "******", mailto:" . $questionData['email'] . "\n" . $PMF_LANG["msgCategory"] . ": " . $categoryData->name . "\n\n" . wordwrap($content, 72);
        $userId = $categoryData->user_id;
        $oUser = new PMF_User();
        $oUser->getUserById($userId);
        $userEmail = $oUser->getUserData('email');
        $mainAdminEmail = $faqconfig->get('main.administrationMail');
        $mail = new PMF_Mail();
        $mail->unsetFrom();
        $mail->setFrom($questionData['email'], $questionData['username']);
        $mail->addTo($mainAdminEmail);
        // Let the category owner get a copy of the message
        if ($userEmail && $mainAdminEmail != $userEmail) {
            $mail->addCc($userEmail);
        }
        $mail->subject = '%sitename%';
        $mail->message = $questionMail;
        $retval = $mail->send();
    }
    return $retval;
}
Пример #3
0
                 $mail->addCc($userEmail);
             }
             $mail->subject = '%sitename%';
             $mail->message = $questionMail;
             $mail->send();
             unset($mail);
             $message = array('success' => $PMF_LANG['msgAskThx4Mail']);
         }
     } else {
         $questionData = array('username' => $name, 'email' => $email, 'category_id' => $ucategory, 'question' => $question, 'is_visible' => $visibility);
         $faq->addQuestion($questionData);
         $questionMail = "User: "******", mailto:" . $questionData['email'] . "\n" . $PMF_LANG["msgCategory"] . ": " . $categories[$questionData['category_id']]["name"] . "\n\n" . wordwrap($question, 72) . "\n\n" . $faqconfig->get('main.referenceURL') . '/admin/';
         $userId = $cat->getCategoryUser($questionData['category_id']);
         $oUser = new PMF_User();
         $oUser->getUserById($userId);
         $userEmail = $oUser->getUserData('email');
         $mainAdminEmail = PMF_Configuration::getInstance()->get('main.administrationMail');
         $mail = new PMF_Mail();
         $mail->setReplyTo($questionData['email'], $questionData['username']);
         $mail->addTo($mainAdminEmail);
         // Let the category owner get a copy of the message
         if ($userEmail && $mainAdminEmail != $userEmail) {
             $mail->addCc($userEmail);
         }
         $mail->subject = '%sitename%';
         $mail->message = $questionMail;
         $mail->send();
         unset($mail);
         $message = array('success' => $PMF_LANG['msgAskThx4Mail']);
     }
 } else {
Пример #4
0
                </form>
            </div>
        </div>
        <?php 
}
?>
        
        <h1><a class="mainpage" href="../"><?php 
print $faqconfig->get('main.titleFAQ');
?>
</a></h1>
        <?php 
if (isset($auth)) {
    ?>
        <h2><?php 
    print $PMF_LANG['ad_user_loggedin'] . $user->getUserData('display_name') . ' (' . $user->getLogin();
    ?>
)<br />
        <?php 
    print $PMF_LANG['ad_session_expiration'];
    ?>
: <span id="sessioncounter">Loading...</span></h2>

        <nav>
        <ul>
            <li<?php 
    print $dashboardPage ? ' class="active"' : '';
    ?>
><a href="index.php"><?php 
    print $PMF_LANG['admin_mainmenu_home'];
    ?>
Пример #5
0
    ?>
</th>
            <th><?php 
    print $PMF_LANG['ad_entry_action'];
    ?>
</th>
        </tr>
    </thead>
        <tbody>
        <?php 
    foreach ($user->getAllUsers() as $userId) {
        $user->getUserById($userId);
        ?>
            <tr>
                <td><?php 
        print $user->getUserData('user_id');
        ?>
</td>
                <td><?php 
        print $user->getUserData('display_name');
        ?>
</td>
                <td><?php 
        print $user->getUserData('email');
        ?>
</td>
                <td><a href="?action=user&amp;user_id=<?php 
        print $user->getUserData('user_id');
        ?>
"><?php 
        print $PMF_LANG['ad_user_edit'];
Пример #6
0
 $recordId = $faqRecord->getSolutionId();
 foreach ($categories as $category) {
     $categoryData = array('category_id' => $category->category_id, 'category_lang' => $newData['lang'], 'record_id' => $recordId, 'record_lang' => $newData['lang']);
     // save the category relations
     $categoryRelations->create($categoryData);
 }
 $sent = array();
 // Let the PMF Administrator and the Category Owner to be informed by email of this new entry
 foreach ($categories as $category) {
     $userId = $category->user_id;
     // Avoid to send multiple emails to the same owner
     if (!isset($sent[$userId])) {
         // TODO: Move this code to Category.php
         $oUser = new PMF_User();
         $oUser->getUserById($userId);
         $catOwnerEmail = $oUser->getUserData('email');
         $mail = new PMF_Mail();
         $mail->unsetFrom();
         $mail->setFrom($usermail);
         $mail->addTo($faqconfig->get('main.administrationMail'));
         // Let the category owner get a copy of the message
         if ($faqconfig->get('main.administrationMail') != $catOwnerEmail) {
             $mail->addCc($catOwnerEmail);
         }
         $mail->subject = '%sitename%';
         // TODO: let the email contains the faq article both as plain text and as HTML
         $mail->message = html_entity_decode($PMF_LANG['msgMailCheck']) . "\n\n" . $faqconfig->get('main.titleFAQ') . ": " . PMF_Link::getSystemUri('/index.php') . '/admin';
         $result = $mail->send();
         unset($mail);
         $sent[$userId] = $catOwnerEmail;
     }
Пример #7
0
        $counter = $displayedCounter = 0;
        foreach ($allUsers as $userId) {
            $user->getUserById($userId);
            if ($displayedCounter >= $perPage) {
                continue;
            }
            $counter++;
            if ($counter <= $firstPage) {
                continue;
            }
            $displayedCounter++;
            $icon = '';
            switch ($user->getStatus()) {
                case 'active':
                    $icon = 'icon-ok';
                    break;
                case 'blocked':
                    $icon = 'icon-lock';
                    break;
                case 'protected':
                    $icon = 'icon-ok-sign';
                    break;
            }
            $templateVars['users'][] = array('id' => $user->getUserId(), 'displayName' => $user->getUserData('display_name'), 'editUrl' => '?action=user&amp;user_id=' . $user->getUserData('user_id'), 'email' => $user->getUserData('email'), 'icon' => $icon, 'loginName' => $user->getLogin(), 'showDeleteButton' => $user->getStatus() !== 'protected', 'status' => $user->getStatus());
        }
        $twig->loadTemplate('user/listallusers.twig')->display($templateVars);
        unset($templateVars, $allUsers, $numUsers, $page, $perPage, $numPages, $lastPage, $firstPage, $baseUrl, $options, $pagination, $counter, $displayedCounter, $icon);
    }
} else {
    require 'noperm.php';
}