Example #1
0
 public function setRadius($args)
 {
     $radius = $args->post['activity-radius'];
     $query = "\n            SELECT\n                id\n            FROM\n                preferences\n            WHERE\n                CodeName = 'ActivitiesNearMeRadius'\n            LIMIT 1\n            ";
     $row = $this->dao->query($query);
     $radiusPref = $row->fetch(PDB::FETCH_OBJ);
     if ($radiusPref === false) {
         return false;
     }
     $membersModel = new MembersModel();
     $membersModel->set_preference($this->getLoggedInMember()->id, $radiusPref->id, $radius);
 }
Example #2
0
 /**
  * 后台登录显示
  *
  */
 public function indexAction()
 {
     if ($this->getRequest()->isPost()) {
         // test
         $member = new MembersModel();
         $pdata = $this->getAllPost();
         $result = $member->validation->validate($pdata, 'only_login');
         $member->parseAttributes($pdata);
         if ($result) {
             $data = $member->select(array('where' => array('username' => $member->username, 'status>' => '1')));
             // 验证是否可以登录
             if ($data && $data['role_type'] == 'admin' && $data['password'] == Tools_help::hash($member->password)) {
                 $member->reMemberMe($data, $member->rememberme);
                 $this->redirect(Tools_help::url('backend/index/index'));
             } else {
                 $this->_view->assign("errors", $this->errorStr('用户名或密码错误请重新填写'));
             }
         } else {
             $this->_view->assign("errors", $member->validation->getErrorSummaryFormatted());
         }
         $this->_view->assign("member", $member);
     }
     $this->_view->assign("pageTitle", '后台登录');
 }
Example #3
0
 /**
  * Resend the confirmation mail in case the user clicked on the link in the
  * login error message
  *
  * @param string $username
  */
 public function resendConfirmationMail($username)
 {
     // fetch ID for member $username
     $vars = array();
     $MembersModel = new MembersModel();
     $member = $MembersModel->getMemberWithUsername($username);
     if ($member) {
         if ($member->Status == 'MailToConfirm') {
             $vars['firstname'] = MOD_crypt::AdminReadCrypted($member->Firstname);
             $vars['secondname'] = MOD_crypt::AdminReadCrypted($member->Secondname);
             $vars['lastname'] = MOD_crypt::AdminReadCrypted($member->Lastname);
             $vars['email'] = MOD_crypt::AdminReadCrypted($member->Email);
             $userId = APP_User::userId($username);
             if (!$userId) {
                 return 'NoSuchMember';
             } else {
                 $View = new SignupView($this);
                 define('DOMAIN_MESSAGE_ID', 'bewelcome.org');
                 // TODO: config
                 $View->registerMail($vars, $member->id, $userId);
             }
         } else {
             return 'NoMailToConfirm';
         }
     } else {
         return 'NoSuchMember';
     }
     return true;
 }
Example #4
0
This file is part of BW Rox.
BW Rox is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
BW Rox is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, see <http://www.gnu.org/licenses/> or
write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA  02111-1307, USA.
*/
$words = new MOD_words();
$model = new MembersModel();
$member = $model->getMemberWithUsername($receiver_username);
?>
<div id="message" class="floatbox">
    <div id="shade_top"></div>
    <div id="messageheader" class="floatbox">
        <div id="messageside" class="float_right">
      <p class="small grey">
        <?php 
echo $words->get('LivesIn');
?>
 <strong><?php 
echo $member->City;
?>
, <?php 
echo $member->Country;
Example #5
0
 public function getWiki($page, $title = true)
 {
     global $ewiki_db, $ewiki_links, $ewiki_plugins, $ewiki_ring, $ewiki_t, $ewiki_errmsg, $ewiki_data, $ewiki_title, $ewiki_id, $ewiki_action, $ewiki_config, $ewiki_author;
     // Some settings
     define("EWIKI_NAME", "BeWelcome Wiki");
     define('EWIKI_SCRIPT', 'wiki/');
     define("EWIKI_SPLIT_TITLE", 1);
     define("EWIKI_SCRIPT_URL", PVars::getObj("env")->baseuri . 'wiki/');
     # absolute URL
     define("EWIKI_SCRIPT_BINARY", 0);
     define("EWIKI_PROTECTED_MODE", 1);
     define("EWIKI_RESCUE_HTML", 1);
     define("EWIKI_URLENCODE", 0);
     define("EWIKI_URLDECODE", 0);
     define("EWIKI_ALLOW_HTML", 1);
     define("EWIKI_DESC", "Document and share content about hospitality exchange and travel on bewelcome.org");
     # site description
     define("EWIKI_COPY", "PrimarilyPublicDomain");
     # site copyright
     define("EWIKI_CATEGORY", "Hospitality Exchange");
     # site subject
     define("EWIKI_LOGO_URL", "http://www.bewelcome.org/images/logo_index_top.png");
     if (!$title) {
         define("EWIKI_PRINT_TITLE", 0);
     }
     # <h2>WikiPageName</h2> on top
     // Authentification
     require_once "erfurtwiki/plugins/auth/auth_perm_ring.php";
     $ewiki_perm_rings['rss'] = 3;
     $model = new MembersModel();
     $member = $model->getLoggedInMember();
     $Right = new MOD_right();
     if ($member && $Right->hasRight('Admin', 'Wiki')) {
         $ewiki_author = $member->Username;
         define("EWIKI_AUTH_DEFAULT_RING", 0);
         //  0 = admin
     } elseif ($member) {
         $ewiki_author = $member->Username;
         define("EWIKI_AUTH_DEFAULT_RING", 2);
         //  2 = edit allowed
     } else {
         $ewiki_author = 'guest';
         define("EWIKI_AUTH_DEFAULT_RING", 3);
         //  3 = read/view/browse-only
     }
     $this->defineMarkup($ewiki_config);
     // More plugins
     require_once "erfurtwiki/plugins/aview/toc.php";
     // Table of contents
     $ewiki_plugins["view_final"][] = "ewiki_add_title";
     require_once "erfurtwiki/plugins/markup/mediawiki.php";
     // load our own mediawiki plugin
     require_once "erfurtwiki/plugins/aview/fpage_copyright.php";
     // Copyleft Info
     require_once "erfurtwiki/plugins/markup/bbcode.php";
     // BBcode plugin
     require_once "erfurtwiki/plugins/markup/smilies.php";
     // smilies ;)
     require_once "erfurtwiki/plugins/markup/rescuehtml.php";
     // safe html tags ;)
     require_once "erfurtwiki/plugins/admin/control.php";
     // load some plugins
     require_once "erfurtwiki/plugins/action/diff.php";
     // stupid diff ;)
     require_once "erfurtwiki/plugins/action/info_qdiff.php";
     // quick diff
     require_once "erfurtwiki/plugins/linking/titlefix.php";
     // quick diff
     // require_once("erfurtwiki/plugins/markup/htmltable.php"); // quick diff
     // require_once("erfurtwiki/plugins/action/verdiff.php"); // version diff - not needed right now!?
     // RSS support
     require_once "erfurtwiki/plugins/lib/feed.php";
     // load our own mediawiki plugin
     require_once "erfurtwiki/plugins/action/rss.php";
     // load our own mediawiki plugin
     // Static pages
     require_once "erfurtwiki/plugins/page/wikinews.php";
     // load some plugins
     require_once "erfurtwiki/plugins/page/recentchanges.php";
     // load some plugins
     require_once "erfurtwiki/plugins/page/powersearch.php";
     // load some plugins
     require_once "erfurtwiki/plugins/page/wantedpages.php";
     // load some plugins
     require_once "erfurtwiki/plugins/page/orphanedpages.php";
     // load some plugins
     require_once "erfurtwiki/plugins/page/recentchanges.php";
     // load some plugins
     //        require_once("erfurtwiki/plugins/aview/control2.php"); // quick diff
     require_once 'erfurtwiki/ewiki.php';
     $ewiki_config["smilies"] = array(":)" => "emoticon_happy.png", ";)" => "emoticon_grin.png", ":D" => "emoticon_smile.png");
     $wiki = ewiki_page($page);
     echo $wiki;
 }
Example #6
0
    protected function column_col3()
    {
        $words = new MOD_words();
        $message = $this->message;
        $purifier = new MOD_htmlpure();
        $purifier = $purifier->getMessagesHtmlPurifier();
        $contact_username = $message->senderUsername;
        $model = new MembersModel();
        $direction_in = true;
        if ($contact_username == $_SESSION['Username']) {
            $contact_username = $message->receiverUsername;
            $direction_in = false;
        }
        $member = $model->getMemberWithUsername($contact_username);
        ?>
        <div id="message" class="floatbox">
            <div id="shade_top"></div>
            <div id="buttonstop">
                <p class="floatbox">
                    <?php 
        if ($direction_in) {
            ?>
                        <a class="button float_left"
                           href="messages/<?php 
            echo $message->id;
            ?>
/reply"><?php 
            echo $words->get('replymessage');
            ?>
</a>
                        <?php 
            if ($message->InFolder == 'Spam') {
                ?>
                            <a class="button float_right"
                               href="messages/<?php 
                echo $message->id;
                ?>
/nospam"><?php 
                echo $words->get('marknospam');
                ?>
</a>
                        <?php 
            } else {
                ?>
                            <a class="button float_right"
                               href="messages/<?php 
                echo $message->id;
                ?>
/spam"><?php 
                echo $words->get('markspam');
                ?>
</a>
                        <?php 
            }
            ?>
                    <?php 
        } else {
            ?>
                        <a class="button float_left"
                           href="messages/<?php 
            echo $message->id;
            ?>
/edit"><?php 
            echo $words->get('editmessage');
            ?>
</a>
                    <?php 
        }
        ?>
                    <a class="button float_right" href="messages/<?php 
        echo $message->id;
        ?>
/delete"
                       onclick="return confirm ('<?php 
        echo $words->getBuffered('MessagesWarningConfirmDelete');
        ?>
')"><?php 
        echo $words->get('delmessage');
        ?>
</a>
                    <?php 
        echo $words->flushBuffer();
        ?>
                </p>
            </div>
            <!-- buttonstop -->
            <div id="messageheader" class="floatbox">
                <div id="messageside" class="float_right">
                    <p class="small grey">
                        <?php 
        echo $words->get('LivesIn');
        ?>
 <strong><?php 
        echo $member->City;
        ?>
, <?php 
        echo $member->Country;
        ?>
</strong>
                        <br/>
                        <?php 
        echo $words->get('Speaks');
        ?>
                        <?php 
        $languages = $member->get_languages_spoken();
        if (count($languages) > 0) {
            $ii = 0;
            $max = count($languages);
            foreach ($languages as $language) {
                $space = $ii != $max - 1 ? ', ' : '';
                ?>
<strong><span
                                    title="<?php 
                echo $words->getSilent('LanguageLevel_' . $language->Level);
                ?>
"><?php 
                echo $language->Name;
                echo $space;
                ?>
</span>
                                </strong><?php 
                echo $words->flushBuffer();
                $ii++;
            }
        }
        ?>
                    </p>

                    <p class="small grey">
                        <a href="messages/with/<?php 
        echo $contact_username;
        ?>
"><img src="images/icons/comments.png"
                                                                              alt="<?php 
        echo $words->getSilent('messages_allmessageswith', $contact_username);
        ?>
"
                                                                              title="<?php 
        echo $words->getSilent('messages_allmessageswith', $contact_username);
        ?>
"/> <?php 
        echo $words->getSilent('messages_allmessageswith', $contact_username);
        ?>
                        </a>
                    </p>
                </div>
                <!-- messageside -->
                <p class="float_left">
                    <?php 
        echo MOD_layoutbits::PIC_50_50($contact_username);
        ?>
                </p>

                <p class="">
                    <span
                        class="grey"><?php 
        echo $direction_in ? $words->get('MessageFrom', '<a href="members/' . $contact_username . '">' . $contact_username . '</a>') : $words->get('MessageTo', '<a href="members/' . $contact_username . '">' . $contact_username . '</a>');
        ?>
 </span>
                </p>

                <p class="">
                    <span class="grey"><?php 
        echo $words->get('MessagesDate');
        ?>
                        : </span> <?php 
        echo date($words->getSilent('DateFormatShort'), strtotime($message->created));
        ?>
                </p>
            </div>
            <div id="messagecontent">
                <p class="text">
                    <?php 
        echo $purifier->purify($message->Message);
        ?>
                </p>
            </div>
            <!-- messagecontent -->
            <div id="messagefooter">
                <p class="floatbox">
                    <?php 
        if ($direction_in) {
            ?>
                        <a class="button float_left"
                           href="messages/<?php 
            echo $message->id;
            ?>
/reply"><?php 
            echo $words->get('replymessage');
            ?>
</a>
                        <?php 
            if ($message->InFolder == 'Spam') {
                ?>
                            <a class="button float_right"
                               href="messages/<?php 
                echo $message->id;
                ?>
/nospam"><?php 
                echo $words->get('marknospam');
                ?>
</a>
                        <?php 
            } else {
                ?>
                            <a class="button float_right"
                               href="messages/<?php 
                echo $message->id;
                ?>
/spam"><?php 
                echo $words->get('markspam');
                ?>
</a>
                        <?php 
            }
            ?>
                    <?php 
        } else {
            ?>
                        <a class="button float_left"
                           href="messages/<?php 
            echo $message->id;
            ?>
/edit"><?php 
            echo $words->get('editmessage');
            ?>
</a>
                    <?php 
        }
        ?>
                    <a class="button float_right"
                       href="messages/<?php 
        echo $message->id;
        ?>
/delete"><?php 
        echo $words->get('delmessage');
        ?>
</a>
                </p>
            </div>
            <!-- messagefooter -->
            <div id="shade"></div>
        </div> <!-- message -->
        <?php 
        echo $words->flushBuffer();
        ?>

    <?php 
    }
Example #7
0
 /**
  * Set preference if comment guidelines have been read.
  */
 public function setCommentGuidelinesRead()
 {
     $query = "\n            SELECT\n                id\n            FROM\n                preferences\n            WHERE\n                CodeName = 'ReadCommentGuidelines'\n            LIMIT 1\n            ";
     $row = $this->dao->query($query);
     $readCommentGuidlinesPref = $row->fetch(PDB::FETCH_OBJ);
     if ($readCommentGuidlinesPref === false) {
         return false;
     }
     $membersModel = new MembersModel();
     $membersModel->set_preference($this->getLoggedInMember()->id, $readCommentGuidlinesPref->id, 1);
 }
Example #8
0
 protected function getMember($cid)
 {
     $model = new MembersModel();
     if (is_numeric($cid)) {
         return $model->getMemberWithId($cid);
     } else {
         if (!empty($cid)) {
             return $model->getMemberWithUsername($cid);
         } else {
             return false;
         }
     }
 }
Example #9
0
 public function adjustThreadsCountToShow($step = 1)
 {
     $MAX_THREADS = 1000;
     //An upper limit just in case
     if (!($member = $this->getLoggedInMember())) {
         return false;
     }
     $vars =& PPostHandler::getVars();
     if (!isset($vars['agoragroupsthreadscountmoreless'])) {
         return false;
     }
     $command = $vars['agoragroupsthreadscountmoreless'];
     $layoutbits = new MOD_layoutbits();
     $forumthreads = intval($layoutbits->getPreference("ForumThreadsOnLandingPage"));
     $groupsthreads = intval($layoutbits->getPreference("GroupsThreadsOnLandingPage"));
     $membersmodel = new MembersModel();
     $query = "\r\n            SELECT\r\n                id\r\n            FROM\r\n                preferences\r\n            WHERE\r\n                CodeName = 'ForumThreadsOnLandingPage'\r\n            LIMIT 1\r\n            ";
     $row = $this->dao->query($query);
     $forumpref = $row->fetch(PDB::FETCH_OBJ);
     if ($forumpref === false) {
         throw new Exception('Database error: "ForumThreadsOnLandingPage"' . ' preference not found in "preferences" table');
     }
     $query = "\r\n            SELECT\r\n                id\r\n            FROM\r\n                preferences\r\n            WHERE\r\n                CodeName = 'GroupsThreadsOnLandingPage'\r\n            LIMIT 1\r\n            ";
     $row = $this->dao->query($query);
     $groupspref = $row->fetch(PDB::FETCH_OBJ);
     if ($groupspref === false) {
         throw new Exception('Database error: "GroupsThreadsOnLandingPage"' . ' preference not found in "preferences" table');
     }
     switch ($command) {
         case "moreagora":
             $membersmodel->set_preference($member->id, $forumpref->id, min($forumthreads + $step, $MAX_THREADS));
             break;
         case "lessagora":
             $membersmodel->set_preference($member->id, $forumpref->id, max($forumthreads - $step, 1));
             break;
         case "moregroups":
             $membersmodel->set_preference($member->id, $groupspref->id, min($groupsthreads + $step, $MAX_THREADS));
             break;
         case "lessgroups":
             $membersmodel->set_preference($member->id, $groupspref->id, max($groupsthreads - $step, 1));
             break;
     }
     return false;
 }
 public function getStatuses()
 {
     if (!isset($this->_statuses)) {
         $MembersModel = new MembersModel();
         $this->_statuses = $MembersModel->getStatuses();
     }
     return $this->_statuses;
 }
Example #11
0
 /**
  * Sends a confirmation e-mail
  *
  * @param string $userId
  */
 public function registerMail($vars, $IdMember, $idTB)
 {
     $MembersModel = new MembersModel();
     $member = $MembersModel->getMemberWithId($IdMember);
     if (!$member) {
         return false;
     }
     $words = new MOD_words();
     // KEY-GENERATION the TB Way
     $key = APP_User::getSetting($idTB, 'regkey');
     if (!$key) {
         return false;
     }
     $key = $key->value;
     $confirmUrl = PVars::getObj('env')->baseuri . 'signup/confirm/' . $member->Username . '/' . $key;
     $confirmUrl_html = "<a href=\"" . $confirmUrl . "\">" . $confirmUrl . "</a>";
     $title = $words->get("Welcome") . '!';
     $body = $words->get("SignupTextRegistration", $vars['firstname'], $vars['secondname'], $vars['lastname'], PVars::getObj('env')->sitename, $confirmUrl_html);
     // set the sender & receiver
     $from = PVars::getObj('mailAddresses')->registration;
     $to = $vars['email'];
     // set the subject
     $subject = $words->get('SignupSubjRegistration', PVars::getObj('env')->sitename);
     // Use MOD_mail to create and send a message
     $result = MOD_mail::sendEmail($subject, $from, $to, $title, $body, $member->getLanguagePreference());
     //Now check if Swift actually sends it
     if (!$result) {
         MOD_log::get()->write(" in signup view registerMail: Failed to send a mail to [" . $to . "]", "signup");
     }
     return $result;
 }
Example #12
0
 /**
  * 修改用户表状态
  *
  *
  */
 public function statusAction()
 {
     $uid = $this->getg('uid', 0);
     if (empty($uid)) {
         $this->error('uid 不能为空!');
     }
     $status = $this->getg('status', 0);
     $status = $status ? 0 : 1;
     // 实例化Model
     $members = new MembersModel();
     $row = $members->update(array('uid' => $uid), array('status' => $status));
     if ($row) {
         $this->error('恭喜,操作成功', 'Message');
     } else {
         $this->error('操作失败');
     }
 }
Example #13
0
 /**
  * Checks if an image is publicly visible.
  *
  * Note: Currently this only checks if the image owner's profile is public.
  * If individual image or album rights are implemented, they can be checked
  * here.
  *
  * @param object $image Image as returned by GalleryModel::imageData()
  *
  * @return bool True if publicly visible, false if not
  */
 private function imageIsPublic($image)
 {
     if (isset($this->membersmodel)) {
         $members = $this->membersmodel;
     } else {
         $members = new MembersModel();
     }
     $imageOwner = $members->getMemberWithUsername($image->user_handle);
     if ($imageOwner->publicProfile === false) {
         return false;
     } else {
         return true;
     }
 }
<?php

// Overwrite SetLocation-Geo-Info with GeoVars-Session (used for non-js users), afterwards unset it again.
if (isset($_SESSION['GeoVars']) && isset($_SESSION['GeoVars']['id']) && isset($_SESSION['GeoVars']['geonameid'])) {
    foreach ($_SESSION['GeoVars'] as $key => $value) {
        $vars[$key] = $value;
    }
    $Member = new MembersModel();
    // set the location
    $result = $Member->setLocation($vars['id'], $vars['geonameid']);
    $errors['Geonameid'] = 'Geoname not set';
    if (count($result['errors']) > 0) {
        $vars['errors'] = $result['errors'];
    }
    // unset($_SESSION['GeoVars']);
}
$callback_tag = $this->layoutkit->formkit->setPostCallback('MembersController', 'setLocationCallback');
$member = $this->member;
$m = new StdClass();
$m->firstname = MOD_crypt::MemberReadCrypted($member->FirstName, '');
$m->secondname = MOD_crypt::MemberReadCrypted($member->SecondName, '');
$m->lastname = MOD_crypt::MemberReadCrypted($member->LastName, '');
$m->geonameid = $member->IdCity;
$m->id = $member->id;
$mem_redirect = $this->layoutkit->formkit->getMemFromRedirect();
// values from previous form submit
if (!$mem_redirect || !isset($mem_redirect->post['id'])) {
    // this is a fresh form
    foreach ($m as $key => $value) {
        $vars[$key] = $value;
    }