コード例 #1
0
ファイル: gae_server.py プロジェクト: kaulkie/jolecule
 def get(self):
     if not users.is_current_user_admin():
         self.error(500)
     else:
         workers = []
         lurkers = []
         for profile in gae_model.UserProfile.all():
             views = gae_model.get_user_views(profile.user_id)
             pdbs = list(gae_model.PdbText.all().filter('user_id', profile.user_id))
             entry = {
                 'url': profile.user_id,
                 'nickname': profile.nickname,
                 'n_view': len(views),
                 'n_pdb': len(pdbs),
             }
             if entry['n_view'] or entry['n_pdb']:
                 workers.append(entry)
             else:
                 lurkers.append(entry)
         self.response.out.write(
             make_page(
                 self.request.path,
                 jinja_it(
                     'templates/userlist.jinja2.html',
                     {
                         'workers': workers,
                         'lurkers': lurkers,
                     }
                 )
             )
         )
コード例 #2
0
ファイル: gae_server.py プロジェクト: sunbc0120/jolecule
 def get(self):
     if not users.is_current_user_admin():
         self.error(500)
     else:
         workers = []
         lurkers = []
         for profile in gae_model.UserProfile.all():
             views = gae_model.get_user_views(profile.user_id)
             pdbs = list(gae_model.PdbText.all().filter(
                 'user_id', profile.user_id))
             entry = {
                 'url': profile.user_id,
                 'nickname': profile.nickname,
                 'n_view': len(views),
                 'n_pdb': len(pdbs),
             }
             if entry['n_view'] or entry['n_pdb']:
                 workers.append(entry)
             else:
                 lurkers.append(entry)
         self.response.out.write(
             make_page(
                 self.request.path,
                 jinja_it('templates/userlist.jinja2.html', {
                     'workers': workers,
                     'lurkers': lurkers,
                 })))
コード例 #3
0
    def get(self):
        user_id = self.request.path.split('/')[-1]

        curr_profile = get_current_user_profile()
        is_user_page = user_id == curr_profile.user_id
        if is_user_page:
            profile = curr_profile
        else:
            profile = gae_model.get_model(gae_model.UserProfile, 'user_id', user_id)
        if profile is None:
            self.error(500)
            return

        is_admin = users.is_current_user_admin()
        if not is_admin and not is_user_page:
            self.error(500)
            return

        views = []
        for view in gae_model.get_user_views(profile.user_id):
            data = json.loads(view.json)
            name = '%s#%s' % (data['pdb_id'], data['view_id'])
            views.append({
                'url': '/pdb/%s' % name,
                'name': name,
                'text': data['text'][:40],
            })

        pdbs = []
        for pdb_text in gae_model.PdbText.all().filter('user_id', profile.user_id):
            pdbs.append({
                'pdb_id': pdb_text.pdb_id,
                'name': pdb_text.description,
            })

        self.response.out.write(
            make_page(
                self.request.path,
                jinja_it(
                    'templates/user.jinja2.html',
                    {
                        'nickname': profile.nickname,
                        'upload_url': blobstore.create_upload_url('/upload'),
                        'views': views,
                        'pdbs': pdbs,
                    }
                )
            )
        )