added status return codes to activities, and fixed a problem with workflow parameters

This commit is contained in:
JT Smith 2006-03-16 22:01:39 +00:00
parent 4dc0fc073d
commit ac1a9c7eae
30 changed files with 135 additions and 59 deletions

View file

@ -90,6 +90,7 @@ sub execute {
$b->finish;
}
$a->finish;
return $self->COMPLETE;
}
1;

View file

@ -84,6 +84,7 @@ sub execute {
$size = $cache->getNamespaceSize($expiresModifier);
$expiresModifier += 60 * 30; # add 30 minutes each pass
}
return $self->COMPLETE;
}

View file

@ -76,6 +76,7 @@ See WebGUI::Workflow::Activity::execute() for details.
sub execute {
my $self = shift;
$self->session->db->write("delete from userLoginLog where timeStamp < ?", [(time()-(86400*$self->get("ageToDelete")))]);
return $self->COMPLETE;
}

View file

@ -134,6 +134,7 @@ sub recurseFileSystem {
}
}
}
return $self->COMPLETE;
}

View file

@ -71,6 +71,7 @@ sub execute {
my $self = shift;
my $versionTag = shift;
$versionTag->commit;
return $self->COMPLETE;
}

View file

@ -145,7 +145,7 @@ sub execute {
methodName=>$instance->get("methodName"),
parameters=>$instance->get("parameters")
});
return defined $cron ? 1 : 0;
return defined $cron ? $self->COMPLETE : $self->ERROR;
}

View file

@ -82,6 +82,7 @@ See WebGUI::Workflow::Activity::execute() for details.
sub execute {
my $self = shift;
$self->session->db->write("update users set karma=karma-? where karma > ?", [$self->get("decayFactor"), $self->get("minimumKarma")]);
return $self->COMPLETE;
}

View file

@ -77,6 +77,7 @@ sub execute {
}
}
$sth->finish;
return $self->COMPLETE;
}

View file

@ -95,6 +95,7 @@ sub execute {
$self->session->db->write("delete from groupings where groupId=? and expireDate < ?", [$data->{groupId}, time()-(86400*$data->{deleteOffset})]);
}
}
return $self->COMPLETE;
}

View file

@ -72,6 +72,7 @@ See WebGUI::Workflow::Activity::execute() for details.
sub execute {
my $self = shift;
$self->session->db->write("update subscriptionCode set status='Expired' where status = 'Unused' and dateCreated + expires < ?", [time()]);
return $self->COMPLETE;
}

View file

@ -79,7 +79,7 @@ sub execute {
WebGUI::Asset::Wobject::SyndicatedContent::_get_rss_data($self->session,$_);
}
}
return 1;
return $self->COMPLETE;
}

View file

@ -99,7 +99,7 @@ sub execute {
subject=>$self->get("subject")
});
$mail->addText($message);
return $mail->send;
return $mail->send ? $self->COMPLETE : $self->ERROR;
}

View file

@ -108,7 +108,7 @@ sub execute {
$properties->{groupId} = $versionTag->get("groupToUse");
}
$inbox->addMessage($properties);
return 1;
return $self->COMPLETE;
}

View file

@ -130,7 +130,7 @@ sub execute {
subject=>'Daily recurring payments report'
});
$mail->addText($message);
$mail->send;
return $mail->send ? $self->COMPLETE : $self->ERROR;
}
1;

View file

@ -84,7 +84,7 @@ sub execute {
}
}
$sth->finish;
return 1;
return $self->COMPLETE;
}

View file

@ -81,7 +81,7 @@ sub execute {
my $asset = WebGUI::Asset->new($self->session, $id,$class);
$asset->purge if (defined $asset);
}
return 1;
return $self->COMPLETE;
}

View file

@ -107,6 +107,7 @@ sub execute {
});
$instance->setScratch("messageId",$message->getId);
$instance->setScratch("status","notified");
return $self->WAITING;
} elsif ($instance->getScratch("status") eq "denied") {
my $newInstance = WebGUI::Workflow::Instance->create($self->session, {
workflowId=>$self->get("doOnDeny"),
@ -116,13 +117,15 @@ sub execute {
priority=>$instance->get("priority")
});
$instance->delete;
return $self->COMPLETE;
} elsif ($instance->getScratch("status") eq "approved") {
my $message = $inbox->getMessage($instance->getScratch("messageId"));
$message->setCompleted;
$instance->deleteScratch("messageId");
$instance->deleteScratch("status");
return 1;
return $self->COMPLETE;
}
return $self->WAITING;
}

View file

@ -71,6 +71,7 @@ sub execute {
my $self = shift;
my $versionTag = shift;
$versionTag->rollback;
return $self->COMPLETE;
}

View file

@ -82,9 +82,10 @@ sub execute {
$self->session->user({user=>$user});
WebGUI::Macro::process(\$cmd);
if (system($cmd)) {
return 0;
$self->session->errorHandler->error("Workflow: RunCommandAsUser failed because: $!");
return $self->ERROR;
} else {
return 1;
return $self->COMPLETE;
}
}

View file

@ -69,7 +69,7 @@ See WebGUI::Workflow::Activity::execute() for details.
sub execute {
my $self = shift;
return unless ($self->session->setting->get("passiveProfilingEnabled"));
return $self->COMPLETE unless ($self->session->setting->get("passiveProfilingEnabled"));
my ($firstDate) = $self->session->db->quickArray("select min(dateOfEntry) from passiveProfileLog");
my $sessionExpired = time() - $self->session->setting->get("sessionTimeout");
# We process entries for registered users and expired visitor sessions
@ -80,6 +80,7 @@ sub execute {
$self->session->db->write("delete from passiveProfileLog where passiveProfileLogId = ?", [$data->{passiveProfileLogId}]);
}
$sth->finish;
return $self->COMPLETE;
}

View file

@ -105,44 +105,45 @@ See WebGUI::Workflow::Activity::execute() for details.
sub execute {
my $self = shift;
my ($userId, $u, $userData, $uri, $port, %args, $fieldName, $ldap, $search, $a, $b);
$a = $self->session->db->read("select userId from users where authMethod='LDAP'");
while (($userId) = $a->array) {
$u = WebGUI::User->new($self->session, $userId);
my $auth = WebGUI::Auth->new($self->session, "LDAP",$userId);
$userData = $auth->getParams;
$uri = URI->new($userData->{ldapUrl});
if ($uri->port < 1) {
$port = 389;
} else {
$port = $uri->port;
}
%args = (port => $port);
$ldap = Net::LDAP->new($uri->host, %args);
if ($ldap) {
my $result = $ldap->bind;
if ($result->code == 0) {
$search = $ldap->search( base=>$userData->{connectDN}, filter=>"&(objectClass=*)" );
if($search->code) {
$self->session->errorHandler->warn("Couldn't search LDAP ".$uri->host." to find user ".$u->username." (".$userId.").\nError Message from LDAP: ".$ldapStatusCode{$search->code});
} elsif($search->count == 0) {
$self->session->errorHandler->warn("No results returned for user with dn ".$userData->{connectDN});
} else {
my $user = WebGUI::User->new($self->session, $userId);
$b = $self->session->db->read("select fieldName from userProfileField where profileCategoryId<>4");
while (($fieldName) = $b->array) {
if ($search->entry(0)->get_value(_alias($fieldName)) ne "") {
$user->profileField($fieldName,$search->entry(0)->get_value(_alias($fieldName)));
}
}
$b->finish;
}
$ldap->unbind;
} else {
$self->session->errorHandler->warn("Couldn't bind to LDAP host ".$uri->host."\nError Message from LDAP: ".$ldapStatusCode{$result->code});
}
}
$a = $self->session->db->read("select userId from users where authMethod='LDAP'");
while (($userId) = $a->array) {
$u = WebGUI::User->new($self->session, $userId);
my $auth = WebGUI::Auth->new($self->session, "LDAP",$userId);
$userData = $auth->getParams;
$uri = URI->new($userData->{ldapUrl});
if ($uri->port < 1) {
$port = 389;
} else {
$port = $uri->port;
}
$a->finish;
%args = (port => $port);
$ldap = Net::LDAP->new($uri->host, %args);
if ($ldap) {
my $result = $ldap->bind;
if ($result->code == 0) {
$search = $ldap->search( base=>$userData->{connectDN}, filter=>"&(objectClass=*)" );
if($search->code) {
$self->session->errorHandler->warn("Couldn't search LDAP ".$uri->host." to find user ".$u->username." (".$userId.").\nError Message from LDAP: ".$ldapStatusCode{$search->code});
} elsif($search->count == 0) {
$self->session->errorHandler->warn("No results returned for user with dn ".$userData->{connectDN});
} else {
my $user = WebGUI::User->new($self->session, $userId);
$b = $self->session->db->read("select fieldName from userProfileField where profileCategoryId<>4");
while (($fieldName) = $b->array) {
if ($search->entry(0)->get_value(_alias($fieldName)) ne "") {
$user->profileField($fieldName,$search->entry(0)->get_value(_alias($fieldName)));
}
}
$b->finish;
}
$ldap->unbind;
} else {
$self->session->errorHandler->warn("Couldn't bind to LDAP host ".$uri->host."\nError Message from LDAP: ".$ldapStatusCode{$result->code});
}
}
}
$a->finish;
return $self->COMPLETE;
}
1;

View file

@ -81,6 +81,7 @@ sub execute {
my $asset = WebGUI::Asset->new($id,$class);
$asset->trash;
}
return $self->COMPLETE;
}

View file

@ -84,7 +84,7 @@ sub execute {
}
}
$sth->finish;
return 1;
return $self->COMPLETE;
}

View file

@ -75,6 +75,7 @@ sub execute {
}
$versionTag->lock;
$versionTag->clearWorking;
return $self->COMPLETE;
}

View file

@ -71,6 +71,7 @@ sub execute {
my $self = shift;
my $versionTag = shift;
$versionTag->unlock;
return $self->COMPLETE;
}

View file

@ -75,6 +75,7 @@ See WebGUI::Workflow::Activity::execute() for details.
sub execute {
my $self = shift;
# do some work here, whatever this activity is supposed to do
return $self->COMPLETE;
}