more asset fixes
This commit is contained in:
parent
1f88c760a3
commit
2e9602e248
4 changed files with 76 additions and 60 deletions
|
|
@ -198,3 +198,7 @@ INSERT INTO template VALUES ('7','Side By Side','<a href=\"<tmpl_var assetId>\">
|
|||
INSERT INTO template VALUES ('6','Right Column','<a href=\"<tmpl_var assetId>\"></a>\r\n\r\n<tmpl_if displayTitle>\r\n <h1><tmpl_var title></h1>\r\n</tmpl_if>\r\n\r\n<tmpl_if description>\r\n <p><tmpl_var description></p>\r\n</tmpl_if>\r\n\r\n<tmpl_if showAdmin>\r\n<p><tmpl_var controls></p>\r\n</tmpl_if>\r\n\r\n<div style=\"clear: both;\"> </div>\r\n\r\n<div>\r\n<!-- begin position 1 -->\r\n<div style=\"width: 66%; float: left;\">\r\n<tmpl_if showAdmin>\r\n <table border=\"0\" id=\"position1\" class=\"content\"><tbody>\r\n</tmpl_if>\r\n\r\n<tmpl_loop position1_loop>\r\n <tmpl_if showAdmin>\r\n <tr id=\"td<tmpl_var id>\">\r\n <td><div id=\"td<tmpl_var id>_div\" class=\"dragable\"> \r\n </tmpl_if>\r\n\r\n <div class=\"content\"><tmpl_var dragger.icon><tmpl_var content></div>\r\n\r\n <tmpl_if showAdmin>\r\n </div></td>\r\n </tr>\r\n </tmpl_if>\r\n</tmpl_loop>\r\n\r\n<tmpl_if showAdmin> \r\n </tbody></table>\r\n</tmpl_if>\r\n</div>\r\n<!-- end position 1 -->\r\n\r\n<!-- begin position 2 -->\r\n<div style=\"width: 34%; float: left;\">\r\n<tmpl_if showAdmin>\r\n <table border=\"0\" id=\"position2\" class=\"content\"><tbody>\r\n</tmpl_if>\r\n\r\n<tmpl_loop position2_loop>\r\n <tmpl_if showAdmin>\r\n <tr id=\"td<tmpl_var id>\">\r\n <td><div id=\"td<tmpl_var id>_div\" class=\"dragable\"> \r\n </tmpl_if>\r\n\r\n <div class=\"content\"><tmpl_var dragger.icon><tmpl_var content></div>\r\n\r\n <tmpl_if showAdmin>\r\n </div></td>\r\n </tr>\r\n </tmpl_if>\r\n</tmpl_loop>\r\n\r\n<tmpl_if showAdmin> \r\n </tbody></table>\r\n</tmpl_if>\r\n</div>\r\n<!-- end position 2 -->\r\n</div>\r\n\r\n<div style=\"clear: both;\"> </div>\r\n\r\n\r\n<tmpl_if showAdmin> \r\n <table><tr id=\"blank\" class=\"hidden\"><td><div><div class=\"empty\"> </div></div></td></tr></table>\r\n <tmpl_var dragger.init>\r\n</tmpl_if>\r\n ','page',1,1);
|
||||
INSERT INTO template VALUES ('1','Default Page','<a href=\"<tmpl_var assetId>\"></a>\r\n\r\n<tmpl_if displayTitle>\r\n <h1><tmpl_var title></h1>\r\n</tmpl_if>\r\n\r\n<tmpl_if description>\r\n <p><tmpl_var description></p>\r\n</tmpl_if>\r\n\r\n<tmpl_if showAdmin>\r\n<p><tmpl_var controls></p>\r\n</tmpl_if>\r\n\r\n<tmpl_if showAdmin>\r\n <table border=\"0\" id=\"position1\" class=\"content\"><tbody>\r\n</tmpl_if>\r\n\r\n<tmpl_loop position1_loop>\r\n <tmpl_if showAdmin>\r\n <tr id=\"td<tmpl_var id>\">\r\n <td><div id=\"td<tmpl_var id>_div\" class=\"dragable\"> \r\n </tmpl_if>\r\n\r\n <div class=\"content\"><tmpl_var dragger.icon><tmpl_var content></div>\r\n\r\n <tmpl_if showAdmin>\r\n </div></td>\r\n </tr>\r\n </tmpl_if>\r\n</tmpl_loop>\r\n\r\n<tmpl_if showAdmin> \r\n </tbody></table>\r\n</tmpl_if>\r\n\r\n<tmpl_if showAdmin> \r\n <table><tr id=\"blank\" class=\"hidden\"><td><div><div class=\"empty\"> </div></div></td></tr></table>\r\n <tmpl_var dragger.init>\r\n</tmpl_if>\r\n ','page',1,1);
|
||||
|
||||
INSERT INTO template VALUES ('1','File','<tmpl_if session.var.adminOn>\r\n<p><tmpl_var controls></p>\r\n</tmpl_if>\r\n<a href=\"<tmpl_var fileUrl>\"><img src=\"<tmpl_var fileIcon>\" alt=\"<tmpl_var filename>\" border=\"0\" /><tmpl_var filename></a>','FileAsset',1,1);
|
||||
|
||||
INSERT INTO template VALUES ('2vyWxxtft_ut0sfoyJm4Hg','File Folder','<a href=\"<tmpl_var assetId>\"></a>\r\n<tmpl_if showAdmin>\r\n<p><tmpl_var controls></p>\r\n</tmpl_if>\r\n\r\n<tmpl_if displayTitle>\r\n <h1><tmpl_var title></h1>\r\n</tmpl_if>\r\n\r\n<tmpl_if description>\r\n <p><tmpl_var description></p>\r\n</tmpl_if>\r\n\r\n\r\n<tmpl_if sublayout_loop>\r\n<div style=\"clear: both;\"> </div>\r\n</tmpl_if>\r\n\r\n<tmpl_loop sublayout_loop>\r\n <div style=\"float: left; width: 180px; text-align: center;\">\r\n <a href=\"<tmpl_var url>\"><img src=\"<tmpl_var session.config.extrasURL>/assets/folder.gif\" border=\"0\" alt=\"Folder\" /><br /><tmpl_var title></a> \r\n </div>\r\n</tmpl_loop>\r\n\r\n<tmpl_if sublayout_loop>\r\n<div style=\"clear: both;\"> </div>\r\n</tmpl_if>\r\n\r\n\r\n<div style=\"clear: both;\"> </div>\r\n\r\n<tmpl_loop position1_loop>\r\n <div style=\"float: left; width: 180px; text-align: center;\">\r\n <tmpl_var content>\r\n </div>\r\n</tmpl_loop>\r\n\r\n<div style=\"clear: both;\"> </div>\r\n','page',1,1);
|
||||
|
||||
|
|
|
|||
|
|
@ -466,7 +466,8 @@ sub getNextChildRank {
|
|||
|
||||
sub getParent {
|
||||
my $self = shift;
|
||||
return WebGUI::Asset->newByDynamicClass($self->get("parentId"));
|
||||
$self->{_parent} = WebGUI::Asset->newByDynamicClass($self->get("parentId")) unless (exists $self->{_parent});
|
||||
return $self->{_parent};
|
||||
}
|
||||
|
||||
sub getParentLineage {
|
||||
|
|
@ -612,6 +613,24 @@ sub paste {
|
|||
return 0;
|
||||
}
|
||||
|
||||
sub processPropertiesFromFormPost {
|
||||
my $self = shift;
|
||||
my %data;
|
||||
foreach my $definition (@{$self->definition}) {
|
||||
foreach my $property (keys %{$definition->{properties}}) {
|
||||
$data{$property} = WebGUI::FormProcessor::process(
|
||||
$property,
|
||||
$definition->{properties}{fieldType},
|
||||
$definition->{properties}{defaultValue}
|
||||
);
|
||||
}
|
||||
}
|
||||
$data{title} = "Untitled" unless ($data{title});
|
||||
$data{menuTitle} = $data{title} unless ($data{menuTitle});
|
||||
$data{url} = $self->getParent->get("url").'/'.$data{menuTitle} unless ($data{url});
|
||||
$self->update(\%data);
|
||||
}
|
||||
|
||||
sub promote {
|
||||
my $self = shift;
|
||||
my ($sisterLineage) = WebGUI::SQL->quickArray("select max(lineage) from asset
|
||||
|
|
@ -747,7 +766,12 @@ sub update {
|
|||
|
||||
sub www_add {
|
||||
my $self = shift;
|
||||
my $newAsset = WebGUI::Asset->newByDynamicClass("new",$session{form}{class},$self->get);
|
||||
my %properties = %{$self->get};
|
||||
delete $properties{title};
|
||||
delete $properties{menuTitle};
|
||||
delete $properties{url};
|
||||
delete $properties{description};
|
||||
my $newAsset = WebGUI::Asset->newByDynamicClass("new",$session{form}{class},\%properties);
|
||||
return $newAsset->www_edit();
|
||||
}
|
||||
|
||||
|
|
@ -830,20 +854,11 @@ sub www_editSave {
|
|||
my $object;
|
||||
if ($session{form}{assetId} eq "new") {
|
||||
$object = $self->addChild({className=>$session{form}{class}});
|
||||
$object->{_parent} = $self;
|
||||
} else {
|
||||
$object = $self;
|
||||
}
|
||||
my %data;
|
||||
foreach my $definition (@{$object->definition}) {
|
||||
foreach my $property (keys %{$definition->{properties}}) {
|
||||
$data{$property} = WebGUI::FormProcessor::process(
|
||||
$property,
|
||||
$definition->{properties}{fieldType},
|
||||
$definition->{properties}{defaultValue}
|
||||
);
|
||||
}
|
||||
}
|
||||
$object->update(\%data);
|
||||
$object->processPropertiesFromFormPost;
|
||||
return $self->www_manageAssets if ($session{form}{afterEdit} eq "assetManager" && $session{form}{assetId} eq "new");
|
||||
return $object->getParent->www_manageAssets if ($session{form}{afterEdit} eq "assetManager");
|
||||
return $object->www_view;
|
||||
|
|
|
|||
|
|
@ -17,8 +17,10 @@ package WebGUI::Asset::File;
|
|||
use strict;
|
||||
use WebGUI::Asset;
|
||||
use WebGUI::HTTP;
|
||||
use WebGUI::Icon;
|
||||
use WebGUI::Session;
|
||||
use WebGUI::Storage;
|
||||
use WebGUI::Template;
|
||||
|
||||
our @ISA = qw(WebGUI::Asset);
|
||||
|
||||
|
|
@ -138,6 +140,33 @@ sub getName {
|
|||
}
|
||||
|
||||
|
||||
sub processPropertiesFromFormPost {
|
||||
my $self = shift;
|
||||
$self->SUPER::processPropertiesFromFormPost;
|
||||
my $storage = WebGUI::Storage->create;
|
||||
my $filename = $storage->addFileFromFormPost("file");
|
||||
if (defined $filename) {
|
||||
my $oldVersions;
|
||||
if ($self->get("filename")) { # do file versioning
|
||||
my @old = split("\n",$self->get("olderVersions"));
|
||||
push(@old,$self->get("storageId")."|".$self->get("filename"));
|
||||
$oldVersions = join("\n",@old);
|
||||
}
|
||||
my %data;
|
||||
$data{filename} = $filename;
|
||||
$data{storageId} = $storage->getId;
|
||||
$data{olderVersions} = $oldVersions;
|
||||
$data{title} = $filename unless ($session{form}{title});
|
||||
$data{menuTitle} = $filename unless ($session{form}{menuTitle});
|
||||
$data{url} = $self->getParent->getUrl.'/'.$filename unless ($session{form}{url});
|
||||
$self->update(\%data);
|
||||
$self->setSize($storage->getFileSize($filename));
|
||||
} else {
|
||||
$storage->delete;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
#-------------------------------------------------------------------
|
||||
|
||||
=head2 purge
|
||||
|
|
@ -161,18 +190,24 @@ sub purge {
|
|||
sub view {
|
||||
my $self = shift;
|
||||
my $storage = WebGUI::Storage->get($self->get("storageId"));
|
||||
use WebGUI::Utility;
|
||||
if (isIn($storage->getFileExtension($self->get("filename")),qw("jpg","png","gif"))) {
|
||||
return '<a href="'.$storage->getUrl($self->get("filename")).'"><img src="'.$storage->getUrl($self->get("filename")).'" alt="test" border="0" /></a>';
|
||||
} else {
|
||||
return '<a href="'.$storage->getUrl($self->get("filename")).'"><img src="'.$storage->getFileIconUrl($self->get("filename")).'" alt="test" border="0" />'.$self->get("filename").'</a>';
|
||||
}
|
||||
my $toolbar = deleteIcon('func=delete',$self->get("url"),WebGUI::International::get(43))
|
||||
.editIcon('func=edit',$self->get("url"))
|
||||
.moveUpIcon('func=promote',$self->get("url"))
|
||||
.moveDownIcon('func=demote',$self->get("url"))
|
||||
.cutIcon('func=cut',$self->get("url"))
|
||||
.copyIcon('func=copy',$self->get("url"));
|
||||
my %var = %{$self->get};
|
||||
$var{controls} = $toolbar;
|
||||
$var{fileUrl} = $storage->getUrl($self->get("filename"));
|
||||
$var{fileIcon} = $storage->getFileIconUrl($self->get("filename"));
|
||||
return WebGUI::Template::process("1","FileAsset",\%var);
|
||||
}
|
||||
|
||||
|
||||
sub view2 {
|
||||
|
||||
sub www_view {
|
||||
my $self = shift;
|
||||
return WebGUI::Privilege::noAccess() unless $self->canView;
|
||||
if ($session{var}{adminOn}) {
|
||||
return $self->www_edit;
|
||||
}
|
||||
|
|
@ -181,44 +216,6 @@ sub view2 {
|
|||
return "";
|
||||
}
|
||||
|
||||
#-------------------------------------------------------------------
|
||||
|
||||
=head2 www_editSave
|
||||
|
||||
Gathers data from www_edit and persists it.
|
||||
|
||||
=cut
|
||||
|
||||
sub www_editSave {
|
||||
my $self = shift;
|
||||
my $output = $self->SUPER::www_editSave();
|
||||
my $storage = WebGUI::Storage->create;
|
||||
my $filename = $storage->addFileFromFormPost("file");
|
||||
if (defined $filename) {
|
||||
my $oldVersions;
|
||||
if ($self->get($filename)) { # do file versioning
|
||||
my @old = split("\n",$self->get("olderVersions"));
|
||||
push(@old,$self->get("storageId")."|".$self->get("filename"));
|
||||
$oldVersions = join("\n",@old);
|
||||
}
|
||||
$self->update({
|
||||
filename=>$filename,
|
||||
storageId=>$storage->getId,
|
||||
olderVersions=>$oldVersions
|
||||
});
|
||||
$self->setSize($storage->getFileSize($filename));
|
||||
} else {
|
||||
$storage->delete;
|
||||
}
|
||||
return $output;
|
||||
}
|
||||
|
||||
#sub www_view {
|
||||
# my $self = shift;
|
||||
# return WebGUI::Privilege::noAccess() unless $self->canView;
|
||||
# return $self->view;
|
||||
#}
|
||||
|
||||
|
||||
1;
|
||||
|
||||
|
|
|
|||
|
|
@ -322,10 +322,10 @@ sub processTemplate {
|
|||
.editIcon('func=edit',$self->get("url"))
|
||||
.moveUpIcon('func=promote',$self->get("url"))
|
||||
.moveDownIcon('func=demote',$self->get("url"))
|
||||
# .moveTopIcon('func=moveTop&wid='.${$wobject}{wobjectId})
|
||||
# .moveBottomIcon('func=moveBottom&wid='.${$wobject}{wobjectId})
|
||||
.cutIcon('func=cut',$self->get("url"))
|
||||
.copyIcon('func=copy',$self->get("url"));
|
||||
# .moveTopIcon('func=moveTop&wid='.${$wobject}{wobjectId})
|
||||
# .moveBottomIcon('func=moveBottom&wid='.${$wobject}{wobjectId})
|
||||
# if (${$wobject}{namespace} ne "WobjectProxy" && isIn("WobjectProxy",@{$session{config}{wobjects}})) {
|
||||
# $wobjectToolbar .= shortcutIcon('func=createShortcut');
|
||||
#}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue