def migrate_datas(): logger = logging.getLogger("alembic.autonomie") from autonomie_base.models.base import DBSESSION session = DBSESSION() from autonomie.models.config import Config import json from autonomie.models.files import ( File, FileType, ) json_str = Config.get_value("attached_filetypes", "[]") try: configured_filetypes = json.loads(json_str) except: logger.exception(u"Error in json str : %s" % json_str) configured_filetypes = [] if configured_filetypes: result = [] for filetype_label in configured_filetypes: if filetype_label: filetype = FileType(label=filetype_label) session.add(filetype) session.flush() result.append(filetype) for typ_ in result: query = File.query().filter_by(label=typ_.label) for file_ in query: file_.file_type_id = typ_.id session.merge(file_) session.flush()
def resize_headers_command(arguments, env): """ Resize headers to limit their size :param dict arguments: The arguments parsed from the command-line :param obj env: The pyramid environment """ from sqlalchemy import distinct from autonomie.models.files import File from autonomie.models.company import Company from autonomie.forms.company import HEADER_RESIZER limit = get_value(arguments, 'limit', None) offset = get_value(arguments, "offset", None) session = DBSESSION() file_id_query = session.query(distinct(Company.header_id)) if limit: file_id_query = file_id_query.limit(limit) if offset: file_id_query = file_id_query.offset(offset) header_ids = [i[0] for i in file_id_query] header_files = File.query().filter(File.id.in_(header_ids)) for header_file in header_files: file_datas = header_file.data_obj if file_datas: print( u"Resizing header with id : {}".format( header_file.id ) ) header_file.data = HEADER_RESIZER.complete(file_datas) session.merge(header_file)
def mydocuments_view(context, request): """ View callable collecting datas for showing the social docs associated to the current user's account """ if context.userdatas is not None: query = File.query() documents = query.filter(File.parent_id == context.userdatas.id).all() else: documents = [] return dict( title=u"Mes documents", documents=documents, )
def mydocuments_view(context, request): """ View callable collecting datas for showing the social docs associated to the current user's account """ if context.userdatas is not None: query = File.query() documents = query.filter( File.parent_id == context.userdatas.id ).all() else: documents = [] return dict( title=u"Mes documents", documents=documents, )