コード例 #1
0
ファイル: user_settings.py プロジェクト: dejans11/my-gfeed
    def get(self):
        logging.info('UserSettingsPage processing')
        user = users.get_current_user()

        q = RegisteredUserSettings.all()
        q.filter('user', user)
        user_settings = q.fetch(1)

        if user_settings == None or len(user_settings) == 0:
            # settings not yet created - for old users
            logging.info("creating user settings...")
            user_settings = RegisteredUserSettings(
                paging_pager_count=settings.PAGE_SIZE, user=user)
            user_settings.put()
        else:
            user_settings = user_settings[0]

        msg_updated = None

        btn_submit = self.request.get("btn_submit", None)

        if btn_submit != None:
            #update user settings
            logging.info("updating user settings...")

            paging_pager_count = int(self.request.get("paging_pager_count"))
            logging.info("paging_pager_count new value: " +
                         str(paging_pager_count))

            user_settings.paging_pager_count = paging_pager_count
            user_settings.put()
            msg_updated = "Settings updated successfully..."

        self.template_values = {
            'home_url': '/home',
            'nickname': user.nickname(),
            'logout_url': users.create_logout_url("/"),
            'msg_updated': msg_updated,
            'user_settings': user_settings
        }

        self.render('user_settings.html')
コード例 #2
0
ファイル: user_settings.py プロジェクト: dejans11/my-gfeed
    def get(self):
        logging.info('UserSettingsPage processing')
        user = users.get_current_user()
        
        q = RegisteredUserSettings.all()
        q.filter('user', user)
        user_settings = q.fetch(1)

        if user_settings == None or len(user_settings) == 0:
            # settings not yet created - for old users
            logging.info("creating user settings...")
            user_settings = RegisteredUserSettings(paging_pager_count=settings.PAGE_SIZE, user=user)
            user_settings.put()
        else:
            user_settings = user_settings[0]
        
        msg_updated = None
        
        btn_submit = self.request.get("btn_submit", None)
        
        if btn_submit != None:
            #update user settings
            logging.info("updating user settings...")
            
            paging_pager_count = int(self.request.get("paging_pager_count"))
            logging.info("paging_pager_count new value: " + str(paging_pager_count))
            
            user_settings.paging_pager_count = paging_pager_count
            user_settings.put()
            msg_updated = "Settings updated successfully..."

        self.template_values = {
                           'home_url' : '/home',
                           'nickname' : user.nickname(),
                           'logout_url' : users.create_logout_url("/"),
                           'msg_updated' : msg_updated,
                           'user_settings' : user_settings
                }

        self.render('user_settings.html')
コード例 #3
0
ファイル: mail.py プロジェクト: dejans11/my-gfeed
    def get(self):
        logging.info('MailPage processing')
        user = users.get_current_user()
        
        page = self.request.get("page", default_value="1");
        page = int(page);
        
        q = RegisteredUserSettings.all()
        q.filter('user', user)
        user_settings_list = q.fetch(1)

        if user_settings_list == None or len(user_settings_list) == 0:
            # settings not yet created - for old users
            logging.info("creating user settings...")
            user_settings = RegisteredUserSettings(paging_pager_count=settings.PAGE_SIZE, user=user)
            user_settings.put()
        else:
            logging.info("user settings already exist...")
            user_settings = user_settings_list[0]
            logging.info("user_settings_list[0] : " + str(user_settings.paging_pager_count))
        
        btn_delete = self.request.get("btn_delete", None)
        
        if btn_delete != None:
            logging.info("deleting emails...")
            
            delete_mail_ids = self.request.get("delete_mail_ids", allow_multiple=True, default_value=None)
            deleted_count = 0
            keys_to_delete = []
            if delete_mail_ids:
                #change this to use a list of keys and delete list and not one key at a time
                for delete_mail_id in delete_mail_ids:
                    logging.info("deleting email : " + str(delete_mail_id))
                    
                    logging.info("deleting email attachments")
                    current_email = Email.get(delete_mail_id)
                    attachment_keys = []
                    for attachment_key in current_email.attachments:
                        attachment_keys.append(attachment_key)
                    db.delete(attachment_keys)
                    
                    keys_to_delete.append(delete_mail_id)
                    #Email.delete(delete_mail_id)
                    deleted_count += 1

                db.delete(keys_to_delete)
                logging.info("deleted_count : " + str(deleted_count))
            
            if page > 1 and deleted_count == int(user_settings.paging_pager_count):
                page -= 1
        
        emails = Email.all()
        emails.filter('user', user).order('-received')

        emails_paged = self.emails_paged(emails, page, user_settings)
        
        emails = emails_paged["results"];
        next_page = None;
        prev_page = None;
        if emails_paged["nextPageExists"]: next_page = page + 1;
        if emails_paged["prevPageExists"]: prev_page = page - 1;

        template_values = {
                           'home_url' : '/home',
                           'nickname' : user.nickname(),
                           'logout_url': users.create_logout_url("/"),
                           'emails': emails,
                           'next_page': next_page,
                           'prev_page': prev_page,
                           'user_settings': user_settings
                }

        self.template_values = template_values
        self.render('mail.html')