Fix the parsing of possible values for list type metadata fields.
This commit is contained in:
parent
303c725d1f
commit
ece881d855
2 changed files with 19 additions and 17 deletions
|
|
@ -4,6 +4,7 @@
|
||||||
- Stats now send over SSL rather than straight HTTP.
|
- Stats now send over SSL rather than straight HTTP.
|
||||||
- fixed #8914: epoch for calendar/List View for Calendar
|
- fixed #8914: epoch for calendar/List View for Calendar
|
||||||
- fixed #10044: Gallery: Javascript, CSS included in body
|
- fixed #10044: Gallery: Javascript, CSS included in body
|
||||||
|
- fixed #10409: Problem using hash in metadata possible values
|
||||||
|
|
||||||
7.7.7
|
7.7.7
|
||||||
- Added EMS Schedule table
|
- Added EMS Schedule table
|
||||||
|
|
|
||||||
|
|
@ -842,27 +842,28 @@ adding additional tabs.
|
||||||
=cut
|
=cut
|
||||||
|
|
||||||
sub getEditForm {
|
sub getEditForm {
|
||||||
my $self = shift;
|
my $self = shift;
|
||||||
my $i18n = WebGUI::International->new($self->session, "Asset");
|
my $session = $self->session;
|
||||||
|
my $i18n = WebGUI::International->new($session, "Asset");
|
||||||
my $ago = $i18n->get("ago");
|
my $ago = $i18n->get("ago");
|
||||||
my $tabform = WebGUI::TabForm->new($self->session,undef,undef,$self->getUrl());
|
my $tabform = WebGUI::TabForm->new($session,undef,undef,$self->getUrl());
|
||||||
my $overrides = $self->session->config->get("assets/".$self->get("className"));
|
my $overrides = $session->config->get("assets/".$self->get("className"));
|
||||||
|
|
||||||
# Set the appropriate URL
|
# Set the appropriate URL
|
||||||
# If we're adding a new asset, don't set anything
|
# If we're adding a new asset, don't set anything
|
||||||
if ( $self->session->form->get( "func" ) ne "add" ) {
|
if ( $session->form->get( "func" ) ne "add" ) {
|
||||||
$tabform->formHeader( { action => $self->getUrl, method => "POST" } );
|
$tabform->formHeader( { action => $self->getUrl, method => "POST" } );
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($self->session->config->get("enableSaveAndCommit")) {
|
if ($session->config->get("enableSaveAndCommit")) {
|
||||||
$tabform->submitAppend(WebGUI::Form::submit($self->session, {
|
$tabform->submitAppend(WebGUI::Form::submit($session, {
|
||||||
name => "saveAndCommit",
|
name => "saveAndCommit",
|
||||||
value => $i18n->get("save and commit"),
|
value => $i18n->get("save and commit"),
|
||||||
}));
|
}));
|
||||||
}
|
}
|
||||||
|
|
||||||
$tabform->submitAppend(
|
$tabform->submitAppend(
|
||||||
WebGUI::Form::submit ( $self->session, {
|
WebGUI::Form::submit ( $session, {
|
||||||
name => "saveAndReturn",
|
name => "saveAndReturn",
|
||||||
value => $i18n->get( "apply" ),
|
value => $i18n->get( "apply" ),
|
||||||
} )
|
} )
|
||||||
|
|
@ -876,7 +877,7 @@ sub getEditForm {
|
||||||
my $class;
|
my $class;
|
||||||
if ($self->getId eq "new") {
|
if ($self->getId eq "new") {
|
||||||
$assetId = "new";
|
$assetId = "new";
|
||||||
$class = $self->session->form->process("class","className");
|
$class = $session->form->process("class","className");
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
# revision history
|
# revision history
|
||||||
|
|
@ -884,13 +885,13 @@ sub getEditForm {
|
||||||
$class = $self->get('className');
|
$class = $self->get('className');
|
||||||
my $ac = $self->getAdminConsole;
|
my $ac = $self->getAdminConsole;
|
||||||
$ac->addSubmenuItem($self->getUrl("func=manageRevisions"),$i18n->get("revisions").":");
|
$ac->addSubmenuItem($self->getUrl("func=manageRevisions"),$i18n->get("revisions").":");
|
||||||
my $rs = $self->session->db->read("select revisionDate from assetData where assetId=? order by revisionDate desc limit 5", [$assetId]);
|
my $rs = $session->db->read("select revisionDate from assetData where assetId=? order by revisionDate desc limit 5", [$assetId]);
|
||||||
while (my ($version) = $rs->array) {
|
while (my ($version) = $rs->array) {
|
||||||
my ($interval, $units) = $self->session->datetime->secondsToInterval(time() - $version);
|
my ($interval, $units) = $session->datetime->secondsToInterval(time() - $version);
|
||||||
$ac->addSubmenuItem($self->getUrl("func=edit;revision=".$version), $interval." ".$units." ".$ago);
|
$ac->addSubmenuItem($self->getUrl("func=edit;revision=".$version), $interval." ".$units." ".$ago);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if ($self->session->form->process("proceed")) {
|
if ($session->form->process("proceed")) {
|
||||||
$tabform->hidden({
|
$tabform->hidden({
|
||||||
name=>"proceed",
|
name=>"proceed",
|
||||||
value=>$self->session->form->process("proceed")
|
value=>$self->session->form->process("proceed")
|
||||||
|
|
@ -915,7 +916,7 @@ sub getEditForm {
|
||||||
}
|
}
|
||||||
|
|
||||||
# process errors
|
# process errors
|
||||||
my $errors = $self->session->stow->get('editFormErrors');
|
my $errors = $session->stow->get('editFormErrors');
|
||||||
if ($errors) {
|
if ($errors) {
|
||||||
$tabform->getTab("properties")->readOnly(
|
$tabform->getTab("properties")->readOnly(
|
||||||
-value=>"<p>Some error(s) occurred:<ul><li>".join('</li><li>', @$errors).'</li></ul></p>',
|
-value=>"<p>Some error(s) occurred:<ul><li>".join('</li><li>', @$errors).'</li></ul></p>',
|
||||||
|
|
@ -923,7 +924,7 @@ sub getEditForm {
|
||||||
}
|
}
|
||||||
|
|
||||||
# build the definition to the generate form
|
# build the definition to the generate form
|
||||||
my @definitions = reverse @{$self->definition($self->session)};
|
my @definitions = reverse @{$self->definition($session)};
|
||||||
tie my %baseProperties, 'Tie::IxHash';
|
tie my %baseProperties, 'Tie::IxHash';
|
||||||
%baseProperties = (
|
%baseProperties = (
|
||||||
assetId => {
|
assetId => {
|
||||||
|
|
@ -956,11 +957,11 @@ sub getEditForm {
|
||||||
|
|
||||||
# extend the definition with metadata
|
# extend the definition with metadata
|
||||||
tie my %extendedProperties, 'Tie::IxHash';
|
tie my %extendedProperties, 'Tie::IxHash';
|
||||||
if ($self->session->setting->get("metaDataEnabled")) {
|
if ($session->setting->get("metaDataEnabled")) {
|
||||||
my $meta = $self->getMetaDataFields();
|
my $meta = $self->getMetaDataFields();
|
||||||
foreach my $field (keys %$meta) {
|
foreach my $field (keys %$meta) {
|
||||||
my $fieldType = $meta->{$field}{fieldType} || "text";
|
my $fieldType = $meta->{$field}{fieldType} || "text";
|
||||||
my $options = $meta->{$field}{possibleValues};
|
my $options = WebGUI::Operation::Shared::secureEval($session,$meta->{$field}{possibleValues});
|
||||||
# Add a "Select..." option on top of a select list to prevent from
|
# Add a "Select..." option on top of a select list to prevent from
|
||||||
# saving the value on top of the list when no choice is made.
|
# saving the value on top of the list when no choice is made.
|
||||||
if("\l$fieldType" eq "selectBox") {
|
if("\l$fieldType" eq "selectBox") {
|
||||||
|
|
@ -978,7 +979,7 @@ sub getEditForm {
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
# add metadata management
|
# add metadata management
|
||||||
if ($self->session->user->isAdmin) {
|
if ($session->user->isAdmin) {
|
||||||
$extendedProperties{_metadatamanagement} = {
|
$extendedProperties{_metadatamanagement} = {
|
||||||
tab => "meta",
|
tab => "meta",
|
||||||
fieldType => "readOnly",
|
fieldType => "readOnly",
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue