Skip to content

Commit

Permalink
Add support for selection of album cover. Can use image from gallery …
Browse files Browse the repository at this point in the history
…or upload a new one.

 - Updated version to 1.5.3-a2 for package install purporses
 - Add new field to galAlbum model - cover_filename

Signed-off-by: Egor Bolgov <egor.b@fabricasaitov.ru>
  • Loading branch information
Egor Bolgov committed Jun 13, 2013
1 parent b8e5126 commit 8317475
Show file tree
Hide file tree
Showing 13 changed files with 503 additions and 74 deletions.
4 changes: 2 additions & 2 deletions _build/build.transport.php
Expand Up @@ -34,8 +34,8 @@
/* define package */
define('PKG_NAME','Gallery');
define('PKG_NAME_LOWER','gallery');
define('PKG_VERSION','1.5.2');
define('PKG_RELEASE','pl');
define('PKG_VERSION','1.5.3');
define('PKG_RELEASE','a2');

/* define sources */
$root = dirname(dirname(__FILE__)).'/';
Expand Down
3 changes: 3 additions & 0 deletions _build/resolvers/resolve.dbchanges.php
Expand Up @@ -56,6 +56,9 @@

$manager->addIndex('galAlbumItem','rank');

/* 1.5.3+ */
$manager->addField('galAlbum','cover_filename');


$modx->setLogLevel($oldLogLevel);
break;
Expand Down
53 changes: 53 additions & 0 deletions assets/components/gallery/js/mgr/gallery.js 100644 → 100755
Expand Up @@ -321,6 +321,59 @@ GAL.window.UploadItem = function(config) {
Ext.extend(GAL.window.UploadItem,MODx.Window);
Ext.reg('gal-window-item-upload',GAL.window.UploadItem);

GAL.window.UploadCover = function(config) {
config = config || {};
this.ident = config.ident || 'gupit'+Ext.id();
Ext.applyIf(config,{
title: _('gallery.cover_upload')
,id: this.ident
,height: 150
,width: 350
,minWidth: 350
,saveBtnText:_('gallery.upload_cover')
,url: GAL.config.connector_url
,action: 'mgr/album/uploadcover'
,fileUpload: true
,fields: [{
xtype: 'hidden'
,name: 'albumid'
},{
layout: 'column'
,border: false
,defaults: {
layout: 'form'
,labelAlign: 'top'
,border: false
,cls:'main-wrapper'
,labelSeparator: ''
}
,items: [{
columnWidth: 1
,items: [{
xtype:'hidden'
,name:'id'
},{
xtype: 'textfield'
,inputType: 'file'
,fieldLabel: _('gallery.file')
,description: MODx.expandHelp ? '' : _('gallery.item_upload_file_desc')
,name: 'file'
,id: this.ident+'-file'
,anchor: '100%'
},{
xtype:'panel'
,fieldLabel: _('gallery.current_cover')
,html: ''
,id: this.ident+'-preview'
}]
}]
}]
});
GAL.window.UploadCover.superclass.constructor.call(this,config);
};
Ext.extend(GAL.window.UploadCover,MODx.Window);
Ext.reg('gal-window-cover-update',GAL.window.UploadCover);


GAL.window.UploadMultiItems = function(config) {
config = config || {};
Expand Down
51 changes: 38 additions & 13 deletions assets/components/gallery/js/mgr/widgets/album/album.items.view.js
@@ -1,6 +1,6 @@
GAL.view.AlbumItems = function(config) {
config = config || {};

this._initTemplates();
Ext.applyIf(config,{
url: GAL.config.connector_url
Expand All @@ -27,7 +27,7 @@ GAL.view.AlbumItems = function(config) {
Ext.extend(GAL.view.AlbumItems,MODx.DataView,{
templates: {}
,windows: {}

,onSort: function(o) {
MODx.Ajax.request({
url: this.config.url
Expand All @@ -43,7 +43,7 @@ Ext.extend(GAL.view.AlbumItems,MODx.DataView,{
,onDblClick: function(d,idx,n) {
var node = this.getSelectedNodes()[0];
if (!node) return false;

if (this.config.inPanel) {
this.cm.activeNode = node;
this.updateItem(node,n);
Expand All @@ -52,7 +52,7 @@ Ext.extend(GAL.view.AlbumItems,MODx.DataView,{
this.fireEvent('select',data);
}
}

,updateItem: function(btn,e) {
var node = this.cm.activeNode;
var data = this.lookup[node.id];
Expand All @@ -70,12 +70,32 @@ Ext.extend(GAL.view.AlbumItems,MODx.DataView,{
this.windows.updateItem.setValues(data);
this.windows.updateItem.show(e.target);
}


,setAsCover:function(btn,e) {
var node = this.cm.activeNode;
var data = this.lookup[node.id];
if (!data) return false;
MODx.Ajax.request({
url: this.config.url
,params: {
action: 'mgr/album/setCoverItem'
,id: data.id
,albumid: data.album
}
,listeners: {
'success': {fn:function(r) {
var panel=Ext.getCmp('gal-panel-album');
panel.getForm().setValues(r.object);
},scope:this}
}
});
}

,deleteItem: function(btn,e) {
var node = this.cm.activeNode;
var data = this.lookup[node.id];
if (!data) return false;

MODx.msg.confirm({
text: _('gallery.item_delete_confirm')
,url: this.config.url
Expand Down Expand Up @@ -111,7 +131,7 @@ Ext.extend(GAL.view.AlbumItems,MODx.DataView,{
});
return true;
}

,run: function(p) {
p = p || {};
var v = {};
Expand All @@ -121,18 +141,18 @@ Ext.extend(GAL.view.AlbumItems,MODx.DataView,{
this.store.baseParams = v;
this.store.load();
}

,sortBy: function(sel) {
this.store.baseParams.sorter = sel.getValue();
this.store.reload();
return true;
}

,sortDir: function(sel) {
this.store.baseParams.dir = sel.getValue();
this.store.reload();
}

,showDetails : function(){
var selNode = this.getSelectedNodes();
var detailEl = Ext.getCmp('gal-album-items-detail').body;
Expand All @@ -148,7 +168,7 @@ Ext.extend(GAL.view.AlbumItems,MODx.DataView,{
detailEl.update('');
}
}

,formatData: function(data) {
var formatSize = function(data){
if(data.size < 1024) {
Expand Down Expand Up @@ -176,7 +196,7 @@ Ext.extend(GAL.view.AlbumItems,MODx.DataView,{
);

this.templates.thumb.compile();

this.templates.details = new Ext.XTemplate(
'<div class="details">'
,'<tpl for=".">'
Expand All @@ -202,7 +222,7 @@ Ext.extend(GAL.view.AlbumItems,MODx.DataView,{
,showScreenshot: function(id) {
var data = this.lookup['gal-item-'+id];
if (!data) return false;

if (!this.ssWin) {
this.ssWin = new Ext.Window({
layout:'fit'
Expand Down Expand Up @@ -240,6 +260,11 @@ Ext.extend(GAL.view.AlbumItems,MODx.DataView,{
,handler: this.updateItem
,scope: this
});
m.add({
text: _('gallery.set_as_cover')
,handler: this.setAsCover
,scope: this
});
m.add('-');
m.add({
text: _('gallery.item_delete')
Expand Down

0 comments on commit 8317475

Please sign in to comment.