コード例 #1
0
class EventTable(BootstrapTable):
    template = 'rnms.templates.widgets.eventtable'
    data_url = lurl('/events/tabledata.json')
    enable_search = True
    columns = [('created', 'Date'), ('severity', 'Severity'), ('host', 'Host'),
               ('attribute', 'Attribute'), ('event_type', 'Type'),
               ('description', 'Description')]
    detail_url = lurl('/events/')
    row_formatter = {'severity': 'formatSeverity'}
    sort_column = 'created'
    sort_asc = False
    striped = True
コード例 #2
0
ファイル: base.py プロジェクト: samsemilia7/SAUCE
    def __call__(self, environ, start_response):
        """Invoke the Controller"""
        # TGController.__call__ dispatches to the Controller method
        # the request is routed to. This routing information is
        # available in environ['pylons.routes_dict']

        # Fill tmpl_context with user data for convenience
        request.identity = c.identity = environ.get('repoze.who.identity')

        try:
            request.user = request.identity.get('user')
        except:
            request.user = None
        finally:
            try:
                request.permissions = request.identity.get('permissions')
            except AttributeError:
                request.permissions = []
            request.student = request.user
            request.teacher = request.user
            c.user = request.user
            c.student = request.user
            c.teacher = request.user

        request.referer = request.environ.get('HTTP_REFERER', None)

        request.allowance = _allowance

        # Initialize other tmpl_context variables
        c.sub_menu = []
        c.side_menu = []

        doc_list = list([('About', lurl('/about'), 'info-sign'), None] + list(
            (label, lurl('/docs/' + url), 'book') for label, url in (
                ('Changelog', 'Changelog'),
                ('Roadmap', 'Roadmap'),
                ('Deutsche Dokumentation', 'deutsch'),
                ('Tips and Tricks', 'tips'),
                ('Test configuration', 'tests'),
            )) + [None, ('Language information', '/languages', 'list-alt')])

        c.doc_menu = menu_docs(doc_list)

        c.event_menu = menu_events(Event.current_events(),
                                   Event.future_events(),
                                   Event.previous_events())

        return super(BaseController, self).__call__(environ, start_response)
コード例 #3
0
ファイル: root.py プロジェクト: nomed/rnms
    def post_login(self, came_from=lurl('/')):
        """
        Redirect the user to the initially requested page on successful
        authentication or redirect her back to the login page if login failed.

        """
        if not request.identity:
            login_counter = request.environ.get('repoze.who.logins', 0) + 1
            redirect('/login',
                     params=dict(came_from=came_from, __logins=login_counter))
        userid = request.identity['repoze.who.userid']
        flash(_('Welcome back, %s!') % userid)
        if predicates.has_permission('manage'):
            redirect(came_from)
        else:
            redirect(lurl('/graphs/'))
コード例 #4
0
    def post_logout(self, came_from=lurl('/')):
        """
        Redirect the user to the initially requested page on logout and say
        goodbye as well.

        """
        return HTTPFound(location=came_from)
コード例 #5
0
 def post_logout(self, came_from=lurl('/'), *args, **kwargs):
     """
     Redirect the user to the initially requested page on logout and say
     goodbye as well.
     """
     flash(_('We hope to see you soon!'))
     return HTTPFound(location=str(came_from))
コード例 #6
0
ファイル: stations.py プロジェクト: preinh/tg2teste
 def _default(self, came_from=lurl('/')):
     id = came_from
     station_details = self._s.getDetails(id)
     #print "ID::" + str(station_details)
     return dict(page='station',
                 d = station_details)
     
コード例 #7
0
    def index(self, came_from=lurl('/'), failure=None, login=''):
        """Handle the front-page."""

        if request.identity:
            has_boxes = False
            if has_permission('manage'):
                all_boxes = BoxEngine.get_number_of_all_boxes()
                if all_boxes['created'] > 0 or all_boxes[
                        'stopped'] > 0 or all_boxes['started'] > 0:
                    has_boxes = True
            else:
                my_boxes = BoxEngine.get_number_of_user_boxes(
                    request.identity['user']._id)
                if my_boxes['created'] > 0 or my_boxes[
                        'stopped'] > 0 or my_boxes['started'] > 0:
                    has_boxes = True

            return dict(page='index', has_boxes=has_boxes)
        else:
            error_msg = None
            if failure is not None:
                if failure == 'user-not-found':
                    error_msg = "Пользователь не найден".decode('utf8')
                elif failure == 'invalid-password':
                    error_msg = "Некорректный пароль".decode('utf8')
                else:
                    error_msg = "Ошибка авторизации".decode('utf8')

            return dict(page='index',
                        came_from=came_from,
                        login=login,
                        error_msg=error_msg)
コード例 #8
0
ファイル: root.py プロジェクト: Ayutac/SAUCE
 def post_logout(self, came_from=lurl('/'), *args, **kwargs):
     """
     Redirect the user to the initially requested page on logout and say
     goodbye as well.
     """
     flash(_('We hope to see you soon!'))
     return HTTPFound(location=str(came_from))
コード例 #9
0
class ContactForm(twf.Form):
    """The WidgetsList defines the fields of the form."""
    class child(twf.ListLayout):
        name = twf.TextField(twc.Required)
        number = twf.TextField(twc.Required)

    action = lurl('/save_contact')
コード例 #10
0
class MarkitUpArea(TextArea):
    resources = [
        CSSLink(link=lurl(
            '/_pluggable/flatpages/markitup/skins/simple/style.css')),
        MarkupLanguageCSSLink(link=lurl(
            '/_pluggable/flatpages/markitup/sets/{language}/style.css')),
        JSLink(link=lurl('/_pluggable/flatpages/jquery.js'),
               location='bodybottom'),
        JSLink(link=lurl('/_pluggable/flatpages/markitup/jquery.markitup.js'),
               location='bodybottom'),
        MarkupLanguageJSLink(
            link=lurl('/_pluggable/flatpages/markitup/sets/{language}/set.js'),
            location='bodybottom'),
        JSSource(src='var jQflatpages = jQuery.noConflict(true);'),
        JSSource(src='jQflatpages("#sx_content").markItUp(mySettings)')
    ]
コード例 #11
0
 def deleteProject(self, came_from=lurl('/'), *args, **kw):
     reload(sys).setdefaultencoding("utf-8");
     self.success = True;
     self.message = "success";
     
     self.df = json.loads(request.body, encoding=request.charset);
     self.idProject = self.df.get('id_question_project');
     self.listQuestion = model.Question.getByProjectId(self.idProject);
     
     self.listQuestionGroup = model.QuestionGroup.getByProject(self.idProject);
     for questionGroup in self.listQuestionGroup:
         #remove sur_map_question_group
         model.MapQuestionGroup.deleteByQuestionGroup(questionGroup.id_question_group)
         #remove question_group
          
         model.QuestionGroup.delete(questionGroup)
         del questionGroup
     
     for self.question in self.listQuestion:
         if(self.question):
             self.idQuestion = self.question.id_question;
             model.Question.deleteQuestoin(self.idQuestion);
     
     
     
     model.QuestionProject.deleteById(self.idProject);
     
     return dict(success=self.success, message = self.message);
コード例 #12
0
class NewPasswordForm(twf.Form):
    class child(twf.TableLayout):
        inline_engine_name = 'kajiki'
        template = '''
         <div  style="padding-top:20px">
<py:for each="c in w.children_hidden">
                ${c.display()}
            </py:for>
                            <div class="col-md-12 ks-section-name">
                                Recover password
                                <hr/>
                            </div>
        <div class="row">
            <div class="form-group col-md-4">
                ${w.children.password.display()}
                <span class="help-block" py:content="w.children.password.error_msg"/>
            </div>
        </div>
        <div class="row">
            <div class="form-group col-md-4">
                ${w.children.password_confirm.display()}
                <span class="help-block" py:content="w.children.password_confirm.error_msg"/>
        </div>
        </div>
        </div>

                '''
        data = HiddenField()
        password = PasswordField(label=l_('New password'), validator=Validator(required=True), css_class='form-control', placeholder=l_('New password'))
        password_confirm = PasswordField(label=l_('Confirm new password'), validator=Validator(required=True), css_class='form-control', placeholder=l_('Confirm password'))
        validator = FieldsMatch('password', 'password_confirm')

    submit = SubmitButton(css_class="btn btn-primary", value=l_("Save password"))

    action = lurl('/reset_request')
コード例 #13
0
ファイル: root.py プロジェクト: lebouquetin/tracim
 def post_logout(self, came_from=lurl('/')):
     """
     Redirect the user to the initially requested page on logout and say
     goodbye as well.
     """
     flash(_('Successfully logged out. We hope to see you soon!'))
     redirect(came_from)
コード例 #14
0
def menu_events(curr, future, prev):

    nav = Menu(u'Events')

    nav.append(MenuItem('Listing', lurl('/events'), 'th-list'))
    nav.append(MenuDivider())

    for event in curr:
        nav.append(
            MenuItem(event.name, event.url, not event.public and 'lock'
                     or None))

    if future:
        nav.append(MenuDivider())
        nav.append(MenuHeader('Future'))
        for event in future:
            nav.append(
                MenuItem(event.name, event.url, not event.public and 'lock'
                         or None))

    if prev:
        nav.append(MenuDivider())
        nav.append(MenuHeader('Previous'))
        for event in prev:
            nav.append(
                MenuItem(event.name, event.url, not event.public and 'lock'
                         or None))

    return nav
コード例 #15
0
 def login(self, came_from=lurl('/start')):
     """Start the user login."""
     login_counter = request.environ.get('repoze.who.logins', 0)
     if login_counter > 0:
         flash(l_('Wrong credentials'), 'warning')
     return dict(page='login', login_counter=str(login_counter),
                 came_from=came_from)
コード例 #16
0
 def subscribe(self, came_from=lurl('/mailinglist'), ml_username=None, ml_fullname=None):
     try:
         mmadmin.mymail_subscribe(ml_username, ml_fullname)
         flash("Successfully subscribed to mailing list")
     except Exception as e:
         flash("An error occurred: {}".format(e), 'error')
     return HTTPFound(location=came_from)
コード例 #17
0
ファイル: user.py プロジェクト: lebouquetin/tracim
    def put(self, current_password, new_password1, new_password2):
        if not tg.config.get('auth_is_internal'):
            raise HTTPForbidden()

        # FIXME - Allow only self password or operation for managers
        current_user = tmpl_context.current_user

        redirect_url = tg.lurl('/home')

        if not current_password or not new_password1 or not new_password2:
            tg.flash(_('Empty password is not allowed.'))
            tg.redirect(redirect_url)

        if current_user.validate_password(current_password) is False:
            tg.flash(_('The current password you typed is wrong'))
            tg.redirect(redirect_url)

        if new_password1!=new_password2:
            tg.flash(_('New passwords do not match.'))
            tg.redirect(redirect_url)

        current_user.password = new_password1
        pm.DBSession.flush()

        tg.flash(_('Your password has been changed'))
        tg.redirect(redirect_url)
コード例 #18
0
    def index(self, id=0, ready="no", came_from=lurl("/")):

        reload(sys).setdefaultencoding("utf8")

        if not request.identity:
            login_counter = request.environ.get("repoze.who.logins", 0) + 1
            redirect("/login", params=dict(came_from=came_from, __logins=login_counter))
        userid = request.identity["repoze.who.userid"]

        log.info("preview id : " + str(id))
        log.info("ready : " + str(ready))

        self.header = ""
        self.footer = ""
        self.nextQuestion = ""
        self.template = ""
        self.questionOption = model.QuestionOption.getId(id)
        if self.questionOption:
            log.info("expire date : " + str(self.questionOption.expire_date))
            log.info("current : " + str(datetime.now()))

            if datetime.now() <= self.questionOption.expire_date:
                log.info("not expire")
            else:
                log.info("expire")

            if str(ready).lower() == "no":
                # check have welcome page
                if not self.utility.isEmpty(self.questionOption.welcome_message):
                    redirect(request.path_info + "/welcome?id=" + str(self.questionOption.id_question_option))
                else:
                    self.template = self.questionOption.theme.template
                    override_template(PreviewController.index, self.template)

            elif str(ready).lower() == "yes":
                self.header = self.questionOption.header_message
                self.footer = self.questionOption.footer_message
                self.urlName = self.utility.spritValue(request.path_info, "/")
                self.template = self.questionOption.theme.template
                if len(self.urlName) >= 1:
                    self.nextQuestion = (
                        "/" + self.urlName[0] + "/saveQuestion" + "?id=" + str(self.questionOption.id_question_option)
                    )

                if self.template is not None and len(self.template) > 0:
                    log.info("template used : %s", self.template)
                    override_template(PreviewController.index, self.template)

        # print 'idproject : ', id;
        return dict(
            page="view",
            header=self.header,
            footer=self.footer,
            action=self.nextQuestion,
            template=self.template,
            urldata=self.URL_GETDATAQUESTION.format(id),
            idproject=id,
            shownavigator=bool(self.questionOption.show_navigator),
            idresp="",
        )
コード例 #19
0
    def welcome(self, id=0, came_from=lurl("/")):
        reload(sys).setdefaultencoding("utf8")

        if not request.identity:
            login_counter = request.environ.get("repoze.who.logins", 0) + 1
            redirect("/login", params=dict(came_from=came_from, __logins=login_counter))
        userid = request.identity["repoze.who.userid"]

        log.info("preview id : " + str(id))

        self.welcome_message = ""
        self.questionOption = model.QuestionOption.getId(id)
        if self.questionOption:
            if datetime.now() <= self.questionOption.expire_date:
                log.info("not expire")
            else:
                log.info("expire")

            self.welcome_message = self.questionOption.welcome_message
            self.nextQuestion = ""

            self.urlName = self.utility.spritValue(request.path_info, "/")

            if len(self.urlName) >= 1:
                self.nextQuestion = "/" + self.urlName[0] + "?id=" + str(self.questionOption.id_question_option)

        return dict(page="view", ready="yes", welcome_message=self.welcome_message, nextQuestion=self.nextQuestion)
コード例 #20
0
    def saveQuestion(self, id=0, came_from=lurl("/"), *args, **kw):
        reload(sys).setdefaultencoding("utf-8")

        if not request.identity:
            login_counter = request.environ.get("repoze.who.logins", 0) + 1
            redirect("/login", params=dict(came_from=came_from, __logins=login_counter))
        userid = request.identity["repoze.who.userid"]

        self.success = True
        self.message = "success"
        self.goodbye_message = ""
        self.nextQuestion = ""

        self.questionOption = model.QuestionOption.getId(id)
        if self.questionOption:
            self.goodbye_message = self.questionOption.end_message
            self.urlRedirect = self.questionOption.redirect_url

        return dict(
            page="goodbye",
            success=self.success,
            message=self.message,
            goodbye=self.goodbye_message,
            nextQuestion=self.nextQuestion,
            urlRedirect=self.urlRedirect,
        )
コード例 #21
0
 def index(self, came_from=lurl('/'), **kw):
     validation_status =  request.validation
     from formencode import validators
     errors =  validation_status['errors']
     print errors
     
     return dict(page='support', login_counter=str(1),came_from=came_from) 
コード例 #22
0
ファイル: root.py プロジェクト: norsig/tracim
 def post_logout(self, came_from=lurl('/')):
     """
     Redirect the user to the initially requested page on logout and say
     goodbye as well.
     """
     flash(_('Successfully logged out. We hope to see you soon!'))
     redirect(came_from)
コード例 #23
0
    def put(self, current_password, new_password1, new_password2):
        if not tg.config.get('auth_is_internal'):
            raise HTTPForbidden()

        # FIXME - Allow only self password or operation for managers
        current_user = tmpl_context.current_user

        redirect_url = tg.lurl('/home')

        if not current_password or not new_password1 or not new_password2:
            tg.flash(_('Empty password is not allowed.'))
            tg.redirect(redirect_url)

        if current_user.validate_password(current_password) is False:
            tg.flash(_('The current password you typed is wrong'))
            tg.redirect(redirect_url)

        if new_password1 != new_password2:
            tg.flash(_('New passwords do not match.'))
            tg.redirect(redirect_url)

        current_user.password = new_password1
        current_user.webdav_left_digest_response_hash = '%s:/:%s' % (
            current_user.email, new_password1)
        pm.DBSession.flush()

        tg.flash(_('Your password has been changed'))
        tg.redirect(redirect_url)
コード例 #24
0
ファイル: root.py プロジェクト: tongpa/PollSurveyWeb
 def index_old(self, came_from=lurl('/')):
     
     #print request.scheme   + '://';
     #hooks.notify('tgext.pylogservice.startup' ) 
     #hooks.notify('tgext.pyutilservice.startup')
     
     return dict(page='metronic') 
コード例 #25
0
 def welcome(self,key=0,came_from=lurl('/')):
     reload(sys).setdefaultencoding("utf-8");
      
     
     log.info('preview id : ' + str(key));
     
     self.respondents = model.Respondents.getByKey(key);
     #self.idProject,self.idPublic,self.idVoter,self.redirect = self.__checkExpire(id);
     if (self.respondents):
     
         self.welcome_message = '';
         
         self.questionOption,self.redirect = self.__checkOptionExpired(self.respondents.id_question_option);
                 
         self.welcome_message= self.questionOption.welcome_message;
         self.nextQuestion  = '';
          
         self.urlName = self.utility.spritValue(request.path_info,'/');
          
         if(len(self.urlName) >= 1 ) :
             #self.nextQuestion = '/' + self.urlName[0]+ '?id='+ str(self.questionOption.id_question_option);
             #self.nextQuestion = '/' + 'ans/reply/'+  str(self.questionOption.id_question_option);
             #self.nextQuestion = self.URL_REPLY.format(id)
             self.nextQuestion = self.urlUtility.URL_REPLY_QUESTIONNAIRE.format(key=str(key)); 
     else:
         log.error("find not found respondent with key %s ", str(key));
         redirect(self.urlUtility.URL_EXPIRED) ;       
         
            
         
     #self.welcome_message
     return dict(page='view', ready = 'yes',welcome_message = Markdown(self.welcome_message).convert(), nextQuestion= self.nextQuestion);
コード例 #26
0
 def thankyou(self,key=0,came_from=lurl('/')):
     reload(sys).setdefaultencoding("utf-8");
     
     log.info('thankyou preview id : %s' %str(key));
     self.isRedirect = True
     self.goodbye = '';
     self.nextQuestion  = '';
     self.urlRedirect = ''; 
     self.showScore = False
     self.respondents = model.Respondents.getByKey(keyGen=key);
     if(self.respondents):
         self.urlName = self.utility.spritValue(request.path_info,'/');
         log.info( "path %s" %self.urlName)
         self.questionOption = self.respondents.question_option
         if self.questionOption :
             self.goodbye= self.questionOption.end_message
             self.showScore = self.utility.convertToBool(self.questionOption.show_score)
             self.urlRedirect = self.questionOption.redirect_url
             if self.utility.convertToBool(self.respondents.redirect_other_url):
                 self.urlRedirect = self.questionOption.redirect_other_url
             
             self.isRedirect = False
         
         self.projectType = self.respondents.question_project.id_question_project_type
         del self.questionOption
     
     if self.isRedirect :
         log.error("find not found respondent with key %s " % str(key));
         redirect(self.urlUtility.URL_EXPIRED) ;  
         
 
     return dict(page='goodbye', ready = 'yes',goodbye = Markdown(self.goodbye).convert(),nextQuestion = self.nextQuestion ,urlRedirect= self.urlRedirect,
                 showScore = self.showScore  ,projectType = self.projectType,imageId = self.respondents.id_respondents);
コード例 #27
0
 def welcome(self,id=0,came_from=lurl('/')):
     reload(sys).setdefaultencoding('utf8')
     
     if not request.identity:
         login_counter = request.environ.get('repoze.who.logins', 0) + 1
         redirect('/login',   params=dict(came_from=came_from, __logins=login_counter))
     userid = request.identity['repoze.who.userid']
    
     
     log.info('preview id : ' + str(id));
     
     
     self.welcome_message = '';
     self.questionOption = model.QuestionOption.getId(id);
     if self.questionOption : 
         if datetime.now() <= self.questionOption.expire_date:
             log.info('not expire');
         else :
             log.info('expire');
             
         self.welcome_message= self.questionOption.welcome_message;
         self.nextQuestion  = '';
          
         self.urlName = self.utility.spritValue(request.path_info,'/');
          
         if(len(self.urlName) >= 1 ) :
             self.nextQuestion = '/' + self.urlName[0]+ '?id='+ str(self.questionOption.id_question_option);
     
         
             
         
     
     return dict(page='view', ready = 'yes',welcome_message = self.welcome_message, nextQuestion= self.nextQuestion);
コード例 #28
0
ファイル: root.py プロジェクト: Rabenvald/WebBot
 def login(self, came_from=lurl('/')):
     """Start the user login."""
     login_counter = request.environ['repoze.who.logins']
     if login_counter > 0:
         flash(_('Wrong credentials'), 'warning')
     return dict(page='login', login_counter=str(login_counter),
                 came_from=came_from)
コード例 #29
0
ファイル: app_cfg.py プロジェクト: DarkDare/tracim
    def __init__(self):

        self.DATA_UPDATE_ALLOWED_DURATION = int(tg.config.get('content.update.allowed.duration', 0))

        self.WEBSITE_TITLE = tg.config.get('website.title', 'TRACIM')
        self.WEBSITE_HOME_TITLE_COLOR = tg.config.get('website.title.color', '#555')
        self.WEBSITE_HOME_IMAGE_URL = tg.lurl('/assets/img/home_illustration.jpg')
        self.WEBSITE_HOME_BACKGROUND_IMAGE_URL = tg.lurl('/assets/img/bg.jpg')
        self.WEBSITE_BASE_URL = tg.config.get('website.base_url', '')

        self.WEBSITE_HOME_TAG_LINE = tg.config.get('website.home.tag_line', '')
        self.WEBSITE_SUBTITLE = tg.config.get('website.home.subtitle', '')
        self.WEBSITE_HOME_BELOW_LOGIN_FORM = tg.config.get('website.home.below_login_form', '')


        self.EMAIL_NOTIFICATION_FROM = tg.config.get('email.notification.from')
        self.EMAIL_NOTIFICATION_CONTENT_UPDATE_TEMPLATE_HTML = tg.config.get('email.notification.content_update.template.html')
        self.EMAIL_NOTIFICATION_CONTENT_UPDATE_TEMPLATE_TEXT = tg.config.get('email.notification.content_update.template.text')
        self.EMAIL_NOTIFICATION_CONTENT_UPDATE_SUBJECT = tg.config.get('email.notification.content_update.subject')
        self.EMAIL_NOTIFICATION_PROCESSING_MODE = tg.config.get('email.notification.processing_mode')


        self.EMAIL_NOTIFICATION_ACTIVATED = asbool(tg.config.get('email.notification.activated'))
        self.EMAIL_NOTIFICATION_SMTP_SERVER = tg.config.get('email.notification.smtp.server')
        self.EMAIL_NOTIFICATION_SMTP_PORT = tg.config.get('email.notification.smtp.port')
        self.EMAIL_NOTIFICATION_SMTP_USER = tg.config.get('email.notification.smtp.user')
        self.EMAIL_NOTIFICATION_SMTP_PASSWORD = tg.config.get('email.notification.smtp.password')

        self.TRACKER_JS_PATH = tg.config.get('js_tracker_path')
        self.TRACKER_JS_CONTENT = self.get_tracker_js_content(self.TRACKER_JS_PATH)

        self.WEBSITE_TREEVIEW_CONTENT = tg.config.get('website.treeview.content')

        self.EMAIL_NOTIFICATION_NOTIFIED_EVENTS = [
            ActionDescription.COMMENT,
            ActionDescription.CREATION,
            ActionDescription.EDITION,
            ActionDescription.REVISION
        ]

        self.EMAIL_NOTIFICATION_NOTIFIED_CONTENTS = [
            ContentType.Page,
            ContentType.Thread,
            ContentType.File,
            ContentType.Comment,
            # ContentType.Folder -- Folder is skipped
        ]
コード例 #30
0
    def post_logout(self, came_from=lurl('/')):
        """
        Redirect the loadingData to the initially requested page on logout and say
        goodbye as well.

        """
        flash(_('We hope to see you soon!'))
        return HTTPFound(location=came_from)
コード例 #31
0
ファイル: utils.py プロジェクト: mbbui/Jminee
def plug_url(pluggable_name, path, params=None, lazy=False):
    if not params:
        params = {}

    if lazy:
        return tg.lurl(DeferredMountPointPath(pluggable_name, path), params=params)
    else:
        return tg.url(DeferredMountPointPath(pluggable_name, path), params=params)
コード例 #32
0
ファイル: root.py プロジェクト: patovala/tgtodotrack
    def post_logout(self, came_from=lurl('/')):
        """
        Redirect the user to the initially requested page on logout and say
        goodbye as well.

        """
        flash(_('Esperamos verlos pronto!'))
        redirect(came_from)
コード例 #33
0
 def post_login(self, came_from=lurl('/')):
     if not request.identity:
         login_counter = request.environ.get('repoze.who.logins', 0) + 1
         redirect('/login',
                  params=dict(came_from=came_from, __logins=login_counter))
     userid = request.identity['repoze.who.userid']
     flash(_('Welcome back, %s!') % userid)
     return HTTPFound(location=came_from)
コード例 #34
0
ファイル: root.py プロジェクト: hemna/wxpy
    def post_login(self, came_from=lurl('/')):
        """
        Redirect the user to the initially requested page on successful
        authentication or redirect her back to the login page if login failed.

        """
        if not request.identity:
            login_counter = request.environ.get('repoze.who.logins', 0) + 1
コード例 #35
0
class CreateExtractionForm(twf.Form):
    class child(axf.bootstrap.BootstrapFormLayout):
        name = twf.TextField(label='Extraction Name',
                             validator=twc.Validator(required=True),
                             css_class="new_extraction_input")

    action = lurl('/extractions/create')
    submit = twf.SubmitButton(value='Create', css_class='btn btn-default')
コード例 #36
0
ファイル: root.py プロジェクト: peguerosdc/pegasus
    def login(self, came_from=lurl('/'), **kw):
        login_counter = request.environ.get('repoze.who.logins', 0)

        if login_counter > 0:
            flash(_('Wrong credentials'), 'warning')

        return dict(page='login', login_counter=str(login_counter),
                    came_from=came_from)
コード例 #37
0
    def index(self, came_from=lurl("/"), **kw):
        validation_status = request.validation
        from formencode import validators

        errors = validation_status["errors"]
        print errors

        return dict(page="howitwork", login_counter=str(1), came_from=came_from)
コード例 #38
0
ファイル: root.py プロジェクト: puria/ksweb
 def post_login(self, came_from=lurl("/")):
     if not request.identity:
         login_counter = request.environ.get("repoze.who.logins", 0) + 1
         redirect("/login",
                  params=dict(came_from=came_from, __logins=login_counter))
     userid = request.identity["repoze.who.userid"]
     flash(_("Welcome back, %s!") % userid)
     return HTTPFound(location=came_from)
コード例 #39
0
ファイル: root.py プロジェクト: mrdrozdov-github/revsub
 def login(self, came_from=lurl('/courses')):
     if request.environ.get('repoze.who.identity', None):
         redirect("/course")
     login_counter = request.environ.get('repoze.who.logins', 0)
     if login_counter > 0:
         flash(_('Error! Invalid username or password.'), 'warning')
     return dict(page='index', login_counter=str(login_counter),
                 came_from=came_from)
コード例 #40
0
ファイル: root.py プロジェクト: puria/rocco
    def post_logout(self, came_from=lurl("/")):
        """
        Redirect the user to the initially requested page on logout and say
        goodbye as well.

        """
        flash(_("We hope to see you soon!"))
        redirect(came_from)
コード例 #41
0
 def add_field(self, came_from=lurl('/field'), **kw ):
     print kw
     FieldModel(name=kw['name'],
               area=float(kw['area']),
               crop_type=kw['type'],
               field_location_center=[float(kw['latitude']),float(kw['longitude'])]
     )
     return HTTPFound(location=came_from)
コード例 #42
0
ファイル: base.py プロジェクト: Ayutac/SAUCE
    def __call__(self, environ, start_response):
        """Invoke the Controller"""
        # TGController.__call__ dispatches to the Controller method
        # the request is routed to. This routing information is
        # available in environ['pylons.routes_dict']

        # Fill tmpl_context with user data for convenience
        request.identity = c.identity = environ.get('repoze.who.identity')

        try:
            request.user = request.identity.get('user')
        except:
            request.user = None
        finally:
            try:
                request.permissions = request.identity.get('permissions')
            except AttributeError:
                request.permissions = []
            request.student = request.user
            request.teacher = request.user
            c.user = request.user
            c.student = request.user
            c.teacher = request.user

        request.referer = request.environ.get('HTTP_REFERER', None)

        request.allowance = _allowance

        # Initialize other tmpl_context variables
        c.sub_menu = []
        c.side_menu = []

        doc_list = list([('About', lurl('/about'), 'info-sign'), None] +
            list((label, lurl('/docs/' + url), 'book') for label, url in (
                ('Changelog', 'Changelog'),
                ('Roadmap', 'Roadmap'),
                ('Deutsche Dokumentation', 'deutsch'),
                ('Tips and Tricks', 'tips'),
                ('Test configuration', 'tests'),
            )) + [None, ('Language information', '/languages', 'list-alt')])

        c.doc_menu = menu_docs(doc_list)

        c.event_menu = menu_events(Event.current_events(), Event.future_events(), Event.previous_events())

        return super(BaseController, self).__call__(environ, start_response)
コード例 #43
0
ファイル: root.py プロジェクト: tongpa/PollSurveyWeb
    def showpassword(self,came_from=lurl('/')):
         
        user =  request.identity['user']; 
        
        password = user.password.encode('utf-8');
        
        log.info( 'old password : %s , new password : %s ' %(user.password, password));
         
        
        password = '******';
        from hashlib import sha256
        import os
        
        salt = sha256()
        salt.update(os.urandom(60))
        salt = salt.hexdigest()
        
        print 'salt : %s , length : %s ' %(salt, str(len(salt)));
        
        hash = sha256()
        # Make sure password is a str because we cannot hash unicode objects
        
        print "orig : %s , salt : %s "   %(password, salt);
        hash.update((password + salt).encode('utf-8'))
        
        #0101877a2d04060e2b34b96fbd4f14d59db5e4b3495bcaa53ee10530556b714f  =
        
        hash = hash.hexdigest()
        
        print 'hash2 : %s ' %(hash);
        
        password = salt + hash

        print 'password : %s ' %(password);
        
        enpassword = password[64:];
        print 'password : %s ' %(enpassword);
        
        repassword = sha256();
        repassword.update(enpassword);
        
        out = repassword.digest().encode('hex');
        print 'repassword : %s ' %(out);
        #check
        newpassword = '******'
        hash = sha256()
        hash.update((newpassword + password[:64]).encode('utf-8'));
        
        print 'old : %s'  %password[64:];
        print 'new : %s' %hash.hexdigest();
        
        
        # Make sure the hashed password is a unicode object at the end of the
        # process because SQLAlchemy _wants_ unicode objects for Unicode cols
        password = password.decode('utf-8')
        
        
        return dict(password = password)
コード例 #44
0
ファイル: root.py プロジェクト: bryancort/nims
 def post_login(self, came_from=lurl('/')):
     """
     Redirect the user to the initially requested page on successful
     authentication or redirect her back to the login page if login failed.
     """
     if not request.identity:
         login_counter = request.environ['repoze.who.logins'] + 1
         redirect('/login', params=dict(came_from=came_from, __logins=login_counter))
     redirect(came_from)
コード例 #45
0
ファイル: root.py プロジェクト: dkm/skylines
    def login(self, came_from=None, **kw):
        """Start the user login."""
        if not came_from:
            if request.referrer:
                came_from = request.referrer
            else:
                came_from = lurl('/')

        return dict(came_from=came_from)
コード例 #46
0
ファイル: root.py プロジェクト: eteamin/onlineluxe
 def post_login(self, came_from=lurl('/')):
     if not request.identity:
         return 'False'
     user = DBSession.query(User).filter(User.user_name == request.remote_user).one_or_none()
     session['user_id'] = user.user_id
     session['user_name'] = user.user_name
     session['display_name'] = user.display_name
     session.save()
     return 'True'
コード例 #47
0
ファイル: root.py プロジェクト: cni/nims
 def post_login(self, came_from=lurl('/')):
     """
     Redirect the user to the initially requested page on successful
     authentication or redirect her back to the login page if login failed.
     """
     if not request.identity:
         login_counter = request.environ['repoze.who.logins'] + 1
         redirect('/login', params=dict(came_from=came_from, __logins=login_counter))
     redirect(came_from)
コード例 #48
0
class UploadFileForm(twf.Form):
    class child(twf.TableLayout):
        inline_engine_name = 'kajiki'
        template = '''

            '''
        upload = FileField(label='')
    submit = SubmitButton(css_class="btn btn-primary", value=l_("Import"))
    action = lurl('/')
コード例 #49
0
ファイル: root.py プロジェクト: tongpa/PollSurveyWeb
    def post_logout(self, came_from=lurl('/'), *args, **kw):
        """
        Redirect the user to the initially requested page on logout and say
        goodbye as well.

        """
        #flash(_('We hope to see you soon!'))
        ManageSession.deleteAll();
        
        return HTTPFound(location=came_from)
コード例 #50
0
 def getProjectByUser(self, came_from=lurl('/'),*args, **kw):
     reload(sys).setdefaultencoding("utf-8");
     
     user =  request.identity['user']; 
     
     quest_project = model.QuestionProject.getAllByUser(1,user.user_id);
     
     log.info("getProjectByUser");
     
     return dict(survey=quest_project , total = len(quest_project));
コード例 #51
0
ファイル: root.py プロジェクト: ozzhates/licensing-portal
    def post_login(self, came_from=lurl('/')):

        if not request.identity:
            login_counter = request.environ.get('repoze.who.logins', 0) + 1
            redirect('/login',
                params=dict(came_from=came_from, __logins=login_counter))
        user_name = request.identity['repoze.who.userid']
        display_name = str(DBSession.query(model.User.display_name).filter(model.User.user_name==user_name).first()[0])
        flash(_('Welcome back, %s!') % display_name)
        redirect('/manage')
コード例 #52
0
def plug_url(pluggable_name, path, params=None, lazy=False):
    if not params:
        params = {}

    if lazy:
        return tg.lurl(DeferredMountPointPath(pluggable_name, path),
                       params=params)
    else:
        return tg.url(DeferredMountPointPath(pluggable_name, path),
                      params=params)
コード例 #53
0
 def post_login(self, came_from=lurl('/')):
     if tg.request.identity:
         user = tg.request.identity['user']
         flash("Welcome, {}!".format(user), 'success')
         u = tg.request.relative_url(str(came_from), to_application=True)
         if not u.startswith(tg.request.application_url):
             flash("Dangerous redirect prevented", "warning")
             redirect('/')
         redirect(u)
     else:
         flash("Login failure", 'error')
         redirect('/')
コード例 #54
0
 def login(self, came_from=lurl('/')):
     """Start the user login."""
     if request.environ.get('repoze.who.identity', None):
         # Already authenticated through external means or by manual URL access
         # Clear flash message cookie
         flash.pop_payload()
         redirect(came_from)
     login_counter = request.environ.get('repoze.who.logins', 0)
     if login_counter > 0:
         flash(_('Wrong credentials'), 'warning')
     return dict(page='login', login_counter=unicode(login_counter),
                 came_from=came_from)
コード例 #55
0
class DashboardChangeName(twf.Form):
    inline_engine_name = 'genshi'
    template = '''
<form xmlns:py="http://genshi.edgewall.org/" py:attrs="w.attrs">
     <span class="error" py:content="w.error_msg"/>
     <div py:if="w.help_msg" class="help">
      <p>
         ${w.help_msg}
      </p>
     </div>
    ${w.child.display()}
</form>
    '''

    class child(axf.bootstrap.BootstrapFormLayout):
        inline_engine_name = 'genshi'
        template = '''
<div xmlns:py="http://genshi.edgewall.org/" py:strip="True">
    <py:for each="c in w.children_hidden">
        ${c.display()}
    </py:for>
    <div>
        <span id="${w.compound_id}:error" class="error" >
            <p py:for="error in w.rollup_errors" class="alert alert-danger">
               <span class="glyphicon glyphicon-exclamation-sign"></span>
               ${error}
           </p>
        </span>
    </div>
    <div class="form-horizontal">
        <div py:for="c in w.children_non_hidden"
             class="form-group ${((c.validator and getattr(c.validator, 'required', getattr(c.validator, 'not_empty', False))) and ' required' or '') + (c.error_msg and ' has-error' or '')}">
            <label py:if="c.label != None" class="col-sm-3 control-label" for="${c.compound_id}">
               $c.label
            </label>
            <div class="col-sm-7">
                ${c.display()}
                <span id="${c.compound_id}:error" class="error help-block" py:content="c.error_msg"/>
            </div>
            <div>${w.submit.display()}</div>
        </div>
    </div>
</div>
        '''

        uid = twf.HiddenField()
        name = twf.TextField(label='Dashboard Name',
                             validator=twc.Validator(required=True))
        submit = twf.SubmitButton(value=l_('Save'),
                                  css_class='btn btn-default col-sm-2')

    action = lurl('/dashboard/save_name')
コード例 #56
0
    def post_login(self, came_from=lurl('/')):
        """
        Redirect the user to the initially requested page on successful
        authentication or redirect her back to the login page if login failed.

        """
        if not request.identity:
            login_counter = request.environ.get('repoze.who.logins', 0) + 1
            redirect('/login',
                params=dict(came_from=came_from, __logins=login_counter))
        user = request.user
        flash(_('Welcome back, %s!') % user.display_name)
        redirect(came_from)
コード例 #57
0
ファイル: root.py プロジェクト: jordy33/telefonica
    def login(self, came_from=lurl('/'), failure=None, login=''):
        """Start the user login."""
        if failure is not None:
            if failure == 'user-not-found':
                flash(_('User not found'), 'error')
            elif failure == 'invalid-password':
                flash(_('Invalid Password'), 'error')

        login_counter = request.environ.get('repoze.who.logins', 0)
        if failure is None and login_counter > 0:
            flash(_('Wrong credentials'), 'warning')

        return dict(page='login', login_counter=str(login_counter),
                    came_from=came_from, login=login)