From aa6fa763c16227ea836db53e2b2cf0e20cfdcb8e Mon Sep 17 00:00:00 2001 From: JT Smith Date: Thu, 16 Feb 2006 21:54:58 +0000 Subject: [PATCH] bug fixes, and working on next workflow activity --- lib/WebGUI/Workflow/Activity.pm | 8 +- .../Workflow/Activity/CommitVersionTag.pm | 81 +++++++++++++++++++ .../Workflow_Activity_CommitVersionTag.pm | 13 +++ 3 files changed, 100 insertions(+), 2 deletions(-) create mode 100644 lib/WebGUI/Workflow/Activity/CommitVersionTag.pm create mode 100644 lib/WebGUI/i18n/English/Workflow_Activity_CommitVersionTag.pm diff --git a/lib/WebGUI/Workflow/Activity.pm b/lib/WebGUI/Workflow/Activity.pm index 487b6c1c5..b2fae351b 100644 --- a/lib/WebGUI/Workflow/Activity.pm +++ b/lib/WebGUI/Workflow/Activity.pm @@ -198,6 +198,9 @@ sub getEditForm { my %params; foreach my $key (keys %{$properties->{$fieldname}}) { $params{$key} = $properties->{$fieldname}{$key}; + if ($fieldname eq "title" && lc($params{$key}) eq "untitled") { + $params{$key} = $definition->[0]{name}; + } } $params{value} = $self->get($fieldname); $params{name} = $fieldname; @@ -291,7 +294,8 @@ Updates activity with data from Form. sub processPropertiesFromFormPost { my $self = shift; my %data; - foreach my $definition (@{$self->definition($self->session)}) { + my $fullDefinition = $self->definition($self->session); + foreach my $definition (@{$fullDefinition}) { foreach my $property (keys %{$definition->{properties}}) { $data{$property} = $self->session->form->process( $property, @@ -300,7 +304,7 @@ sub processPropertiesFromFormPost { ); } } - $data{title} = "Untitled" unless ($data{title}); + $data{title} = $fullDefinition->[0]{name} if ($data{title} eq "" || lc($data{title}) eq "untitled"); $self->set(\%data); } diff --git a/lib/WebGUI/Workflow/Activity/CommitVersionTag.pm b/lib/WebGUI/Workflow/Activity/CommitVersionTag.pm new file mode 100644 index 000000000..8073eb34d --- /dev/null +++ b/lib/WebGUI/Workflow/Activity/CommitVersionTag.pm @@ -0,0 +1,81 @@ +package WebGUI::Workflow::Activity::CleanCommitVersionTag; + + +=head1 LEGAL + + ------------------------------------------------------------------- + WebGUI is Copyright 2001-2006 Plain Black Corporation. + ------------------------------------------------------------------- + Please read the legal notices (docs/legal.txt) and the license + (docs/license.txt) that came with this distribution before using + this software. + ------------------------------------------------------------------- + http://www.plainblack.com info@plainblack.com + ------------------------------------------------------------------- + +=cut + +use strict; +use base 'WebGUI::Workflow::Activity'; +use WebGUI::VersionTag; + + +=head1 NAME + +Package WebGUI::Workflow::Activity::CommitVersionTag + +=head1 DESCRIPTION + +This activity commmits an open version tag. + +=head1 SYNOPSIS + +See WebGUI::Workflow::Activity for details on how to use any activity. + +=head1 METHODS + +These methods are available from this class: + +=cut + +#------------------------------------------------------------------- + +=head2 definition ( session, definition ) + +See WebGUI::Workflow::Activity::defintion() for details. + +=cut + +sub definition { + my $class = shift; + my $session = shift; + my $definition = shift; + my $i18n = WebGUI::International->new($session, "Workflow_Activity_CommitVersionTag"); + push(@{$definition}, { + name=>$i18n->get("topicName"), + properties=> { } + }); + return $class->SUPER::definition($session,$definition); +} + + +#------------------------------------------------------------------- + +=head2 execute ( ) + +See WebGUI::Workflow::Activity::execute() for details. + +=cut + +sub execute { + my $self = shift; + my $versionTag = shift; + $versionTag->commit; +} + + + + +1; + + diff --git a/lib/WebGUI/i18n/English/Workflow_Activity_CommitVersionTag.pm b/lib/WebGUI/i18n/English/Workflow_Activity_CommitVersionTag.pm new file mode 100644 index 000000000..b0de33583 --- /dev/null +++ b/lib/WebGUI/i18n/English/Workflow_Activity_CommitVersionTag.pm @@ -0,0 +1,13 @@ +package WebGUI::i18n::English::Workflow_Activity_CommitVersionTag; + +our $I18N = { + + 'topicName' => { + message => q|Commit Version Tag|, + context => q|The name of this workflow activity.|, + lastUpdated => 0, + }, + +}; + +1;