ticketnum = datetime.datetime.now().strftime('%y%m%d%H%M%S') image_path = os.path.join(pylons.config['uploads.previews'], ticketnum + '_' + os.path.basename(temppath)) print image_path params = { 'temppath' : temppath, 'fullpath' : image_path, 'width' : 600, 'height' : 400 } cmd = "convert %(temppath)s -resize %(width)dx%(height)d\> -size %(width)dx%(height)d xc:black +swap -gravity center -composite %(fullpath)s" % params subprocess.call(cmd, shell=True) self.image = str(image_path[len(pylons.config['uploads.root']):]) #Form Field @classmethod def new_form_fields(cls): fields = Resource.new_form_fields() fields.insert(2, 'image', { 'fieldLabel' : 'Image', 'xtype':'fileuploadfield'}) return fields def _edit_form_fields(self, **kwargs): fields = Resource._edit_form_fields(self.__class__) del fields['image'] return fields @classmethod def _new_dialog_config(cls, *args, **kwargs): data = Resource._new_dialog_config(*args, **kwargs) data['fileUpload'] = True print data return data #Black Magic Resource._register(Preview)
def to_dict(self): data = Resource.to_dict(self) print 'Creating Dictionary for JSON output.' if self.asset: for k, v in self.asset.to_dict().iteritems(): data['asset_' + k] = v return data @classmethod def new_form_fields(cls): #fields = Resource.new_form_fields() fields = Resource.new_form_fields() fields['asset'] = { 'fieldLabel' : 'Asset' , 'xtype' : 'vault.resourcelinkfield', 'rtype' : 'assets' } return fields def _edit_form_fields(self): return self.new_form_fields() def _update_asset_id(self, asset_id): try: id = int(asset_id) except ValueError: id = 0 if id: asset = Session.query(Resource).filter(Resource.id==id).first() self.asset = asset #Black Magic Resource._register(Version)
def to_dict(self): data = Resource.to_dict(self) if self.asset: for k, v in self.asset.to_dict().iteritems(): data['asset_' + k] = v return data @classmethod def new_form_fields(cls): #fields = Resource.new_form_fields() fields = Resource.new_form_fields() fields['asset'] = { 'fieldLabel' : 'Asset' , 'xtype' : 'vault.resourcelinkfield', 'rtype' : 'assets' } fields['estimate'] = { 'fieldLabel' : 'Estimated Time' , 'xtype' : 'numberfield' } return fields def _edit_form_fields(self): return self.new_form_fields() def _update_asset_id(self, asset_id): try: id = int(asset_id) except ValueError: id = 0 if id: asset = Session.query(Resource).filter(Resource.id==id).first() self.asset = asset #Black Magic Resource._register(Task)