Example #1
0
    def display(self, templateFile, params={}):
        path = os.path.join(
            os.path.dirname(__file__) + '/../templates/', templateFile)

        user = users.get_current_user()
        if user:
            isAdmin = user.email() == "*****@*****.**"
        else:
            isAdmin = False

        # Add some default parameters
        params['status'] = self.status
        params['APP_URL'] = 'http://joel.poloney.com/galleria'
        params['user'] = user
        params['isAdmin'] = isAdmin

        # Get 5 most recent albums
        params['recentAlbums'] = Album.gql("ORDER BY created DESC LIMIT 5")

        # Get All categories
        params['categories'] = Category.all()

        # Get information for stats section
        params['numAlbums'] = Album.all().count()
        params['numPhotos'] = Photo.all().count()

        self.response.out.write(template.render(path, params))
Example #2
0
 def display(self,templateFile,params={}):
     path=os.path.join(os.path.dirname(__file__) + '/../templates/', templateFile)
     
     user=users.get_current_user()
     if user:
         isAdmin=user.email() == "*****@*****.**"
     else:
         isAdmin=False
     
     # Add some default parameters    
     params['status']=self.status
     params['APP_URL']='http://joel.poloney.com/galleria'
     params['user']=user
     params['isAdmin']=isAdmin
     
     # Get 5 most recent albums
     params['recentAlbums']=Album.gql("ORDER BY created DESC LIMIT 5")
     
     # Get All categories
     params['categories']=Category.all()
     
     # Get information for stats section
     params['numAlbums']=Album.all().count()
     params['numPhotos']=Photo.all().count()
     
     self.response.out.write(template.render(path, params))
Example #3
0
def add_subject(row,group,data_from):
    img_buff = StringIO(row[5].read())
    district, name, cert_id = '', row[1], row[0]
    img_uri = save_stream(img_buff)
    core_ = Core.query.filter(Core.id == group.core_id).first()
    ip,port = core_.ip,core_.port
    basic_group_name = 'basic' + str(group.id)
    try:
            ret = add_image(ip,port,basic_group_name,img_buff,'',True)
            group_index = ret['id']
    except Exception  as e:
        log.error('过core失败:{}'.format(e))
        group_index = -1

    # subject = Subject.query.filter(Subject.cert_id == cert_id).first()
    # if not subject:
    subject = Subject(
        group_id = group.id,
        category = group.category,
        district = district,
        gender = group.gender,
        name = name,
        cert_id = cert_id,
        remark = data_from,
        timestamp = time.time()
    )
    db.session.add(subject)
    try:
        db.session.commit()
    except Exception as e:
        db.session.rollback()
        log.error('{}存入subject表失败:{}'.format(name,e))
        return 0
    # else:
    #     subject.remark = data_from
    #     try:
    #         db.session.commit()
    #     except Exception as e:
    #         db.session.rollback()
    #         log.error('{}存入subject表失败:{}'.format(name,e))
    #         return 0

         
         
    photo = Photo(
            group_id = group.id,
            subject_id = subject.id,
            group_index = group_index,
            path = img_uri,
            rect = '',
            tag = '',
    )
    db.session.add(photo)
    try:
        db.session.commit()
    except Exception as e:
        db.session.rollback()
        log.error('{}存入photo表失败:{}'.format(name,e))
        return 0
Example #4
0
    def getThumbnail(self):
        photo = None
        if self.thumbnailId:
            photo = Photo.get_by_id(self.thumbnailId)
        else:
            photos = self.getPhotos()
            for photo in photos:
                break

        return photo
Example #5
0
 def getThumbnail(self):
     photo = None
     if self.thumbnailId:
         photo = Photo.get_by_id(self.thumbnailId)
     else:
         photos = self.getPhotos()
         for photo in photos:
             break;
         
     return photo;
Example #6
0
 def get(self):
     term = self.request.get('s')
     
     photos = Photo.all().search(term, properties=['name', 'description']).order('name')
     logging.info(photos.count())
     params={
         'term':term,
         'photos':photos,
         'hasPhotos':photos.count() > 0
     }
     self.display('search.html', params)
    def get(self, resource):
        photoId = int(urllib.unquote(resource))
        photo = Photo.get_by_id(photoId)
        if photo:
            prevPhoto = photo.getPrevPhoto()
            nextPhoto = photo.getNextPhoto()

        params = {
            'photo': photo,
            'title': photo.getAlbum().name,
            'prev': prevPhoto,
            'next': nextPhoto,
            'rightCol': 'rightCol/photo.html'
        }

        self.display('photo.html', params)
 def get(self, resource):
     photoId = int(urllib.unquote(resource))
     photo = Photo.get_by_id(photoId)
     if photo:
         prevPhoto = photo.getPrevPhoto()
         nextPhoto = photo.getNextPhoto()
     
     params = {
         'photo':photo,
         'title':photo.getAlbum().name,
         'prev':prevPhoto,
         'next':nextPhoto,
         'rightCol':'rightCol/photo.html'
     }
         
     self.display('photo.html', params)
 def get(self, resource):
     resource = str(urllib.unquote(resource))
     photo = Photo.get(resource)
     self.response.headers['Content-Type'] = "image/jpeg"
     self.response.out.write(photo.thumbnail)
Example #10
0
 def getPhotos(self):
     return Photo.gql("WHERE albumId = :id ORDER BY created DESC",
                      id=int(self.key().id()))
Example #11
0
 def getPhotos(self):
     return Photo.gql("WHERE albumId = :id ORDER BY created DESC", id=int(self.key().id()))
Example #12
0
 def post (self):
     self.verifyLogin()
     
     if self.get_uploads('image'):
         photo = Photo()
         photo.name = self.request.get('name')
         photo.description = self.request.get('description')
         photo.albumId = int(self.request.get('albumId'))
         
         uploadFiles = self.get_uploads('image')
         blobInfo = uploadFiles[0]
         if blobInfo:
             # regenerate the thumbnail for the photo
             photo.image = blobInfo.key()
             photo.regenerateThumbnail()
     
         photo.content = self.request.get('content')
         photo.put()
         
     self.redirect('/admin')
Example #13
0
 def handleAction(self):
     self.verifyLogin()
     
     action = self.request.get('action')
     
     params = {
         'action':action
     }
     
     if action == 'addphoto':
         albums = Album.gql("ORDER BY created DESC")
         
         if albums.count() > 0:
             params['uploadUrl'] = blobstore.create_upload_url('/upload')
         
         params['albums'] = albums
     elif action == 'addalbum':
         params['categories'] = Category.all()
         
         if self.request.get('submit'):
             album = Album()
             album.name = self.request.get('name')
             album.description = self.request.get('description')
             album.catId = int(self.request.get('catId'))
             album.modified = datetime.datetime.now()
             album.put()
             
             self.setStatus('Added new album')
             params['action'] = False
     elif action == 'editphoto':
         photoId = int(self.request.get('id'))
         photo = Photo.get_by_id(photoId)
         
         params['photo'] = photo
         params['albums'] = Album.gql("ORDER BY created DESC")
         if self.request.get('submit'):
             photo.name = self.request.get('name')
             photo.description = self.request.get('description')
             photo.albumId = int(self.request.get('albumId'))
             photo.regenerateThumbnail()
             photo.put()
             
             self.redirect(photo.getPermLink())
     elif action == 'delphoto':
         photoId = int(self.request.get('id'))
         photo = Photo.get_by_id(photoId)
         photo.delete()
         
         self.setStatus('Photo has been deleted')
         params['action'] = False
     elif action == 'editalbum':
         albumId = int(self.request.get('id'))
         album = Album.get_by_id(albumId)
         
         params['album'] = album
         params['categories'] = Category.all()
         if self.request.get('submit'):
             album.name = self.request.get('name')
             album.description = self.request.get('description')
             album.catId = int(self.request.get('catId'))
             album.modified = datetime.datetime.now()
             album.put()
             
             self.redirect(album.getPermLink())
     elif action == 'delalbum':
         albumId = int(self.request.get('id'))
         album = Album.get_by_id(albumId)
         album.delete()
         
         self.setStatus('Album has been deleted')
         params['action'] = False
     elif action == 'addcategory':
         if self.request.get('submit'):
             category = Category()
             category.name = self.request.get('name')
             category.description = self.request.get('description')
             category.put()
             
             self.setStatus('Added new category')
             params['action'] = False
     elif action == 'editcategory':
         catId = int(self.request.get('id'))
         category = Category.get_by_id(catId)
         
         params['category'] = category
         if self.request.get('submit'):
             category.name = self.request.get('name')
             category.description = self.request.get('description')
             category.put()
             
             self.redirect(category.getPermLink())
     elif action == 'delcategory':
         catId = int(self.request.get('id'))
         category = Category.get_by_id(catId)
         category.delete()
         
         self.setStatus('Category has been deleted')
         params['action'] = False
     
     self.display('admin.html', params)
 def get(self, resource):
     resource = str(urllib.unquote(resource))
     photo = Photo.get(resource)
     self.response.headers['Content-Type'] = "image/jpeg"
     self.response.out.write(photo.thumbnail)