Merge branch 'master' into survey

* master: (36 commits)
  Add a mutator for questionsAnswered, with tests.
  Fix i18n file namespace.
  Flesh out the recordResponses POD.  Almost ready for more in depth testing.
  recordResponse tests (just a few)
  goto tests.
  Add POD stubs, fully document goto.
  Fix my stupid typo in the Shelf template with div.
  nextQuestions tests.
  Add section separator comments between the subroutines.
  Remove old discussion related items from the Article templates.
  matrix compare screen bugfix
  matrix bug fixes
  Add more AdminBar tests.
  Add tests for nextSectionid, nextSection, currentSection.
  Tests for createSurveyOrder and shuffle.
  Change ResponseJSON to use a proper mutator for startTime.
  Forward porting site starter css fix for clears and page content positioning.
  forward porting quotes in asset title fixTitle test
  forward port syndicated articles i18n template fix
  Forward port templated ITransact edit credentials screen.
  ...
This commit is contained in:
Patrick Donelan 2008-12-15 00:35:32 +00:00
commit 7a42b4b241
49 changed files with 1659 additions and 280 deletions

View file

@ -1,3 +1,13 @@
7.6.7
- fixed #9263: Thingy possibleValues processing, and List type autodetection.
- fixed: Alter WebGUI::Asset::Template's update method so that it can import packages that use the old, deprecated headBlock property. The update method change is deprecatd.
- fixed #9266: controls missing on product asset
- fixed #9150: Edit Data Table - Cannot add column (David Delikat)
- fixed #9261: Cart Payment Screen not templated
- fixed #4124: Site starter uses floats in ways that cause problems
- fixed #9274: AdminBar errors and fails when an asset class cannot be loaded
- fixed #9301: Error in Shelf Template
7.6.6
- fixed #8792: Image Preview gives ERROR in Collateral Manager
- fixed #8774: Forum Rich Edit no longer supports indent/outdent
@ -7,6 +17,13 @@
- fixed #9219: Thingy After Save Search This Thing not showing all rows (SDH Consulting Group)
- fixed #9231: Singleton workflows should not report an error when an attempt is made to run them again
- fixed #9244: i18n for colin
- fixed #9252: Thingy defaultValue length causes input to be truncated (SDH Consulting Group)
- fixed #8937: Feeds in Calendar strip information
- fixed #9063: Thingy - Time Field editing errors
- fixed #9237: Payment Gateways all display "cash"
- fixed #8816: PayDriver "Label" of the instance of the driver should be used instead of the generic name
- fixed #4220: testEnvironment.pl unable to find WebGUI modules...
- fixed #9279: "Read more" text in Syndicated Articles is not a label
7.6.5
- security: A problem was discovered and fixed in which users could email executable attachments to a collaboration system and then when viewed online, could execute them.

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View file

@ -29,6 +29,8 @@ my $quiet; # this line required
my $session = start(); # this line required
# upgrade functions go here
addMatrixEditListingTemplate( $session );
lengthenThingyDefaultValues($session);
finish($session); # this line required
@ -42,6 +44,24 @@ finish($session); # this line required
# print "DONE!\n" unless $quiet;
#}
# Add editListingTemplate property to Matrix
sub addMatrixEditListingTemplate {
my $session = shift;
print "Add editListingTemplate property to Matrix\t... " unless $quiet;
$session->db->write("alter table Matrix add editListingTemplateId char(22)");
print "DONE!\n" unless $quiet;
}
#----------------------------------------------------------------------------
# Describe what our function does
sub lengthenThingyDefaultValues {
my $session = shift;
print "\tMake sure that Thingy fields can have a default value size appropriate to their field type... " unless $quiet;
# and here's our code
$session->db->write('alter table Thingy_fields modify defaultValue longtext');
print "DONE!\n" unless $quiet;
}
# -------------- DO NOT EDIT BELOW THIS LINE --------------------------------

View file

@ -0,0 +1,123 @@
#-------------------------------------------------------------------
# WebGUI is Copyright 2001-2008 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
#-------------------------------------------------------------------
our ($webguiRoot);
BEGIN {
$webguiRoot = "../..";
unshift (@INC, $webguiRoot."/lib");
}
use strict;
use Getopt::Long;
use WebGUI::Session;
use WebGUI::Storage;
use WebGUI::Asset;
my $toVersion = '7.6.7';
my $quiet; # this line required
my $session = start(); # this line required
# upgrade functions go here
finish($session); # this line required
#----------------------------------------------------------------------------
# Describe what our function does
#sub exampleFunction {
# my $session = shift;
# print "\tWe're doing some stuff here that you should know about... " unless $quiet;
# # and here's our code
# print "DONE!\n" unless $quiet;
#}
# -------------- DO NOT EDIT BELOW THIS LINE --------------------------------
#----------------------------------------------------------------------------
# Add a package to the import node
sub addPackage {
my $session = shift;
my $file = shift;
# Make a storage location for the package
my $storage = WebGUI::Storage->createTemp( $session );
$storage->addFileFromFilesystem( $file );
# Import the package into the import node
my $package = WebGUI::Asset->getImportNode($session)->importPackage( $storage );
# Make the package not a package anymore
$package->update({ isPackage => 0 });
# Set the default flag for templates added
my $assetIds
= $package->getLineage( ['self','descendants'], {
includeOnlyClasses => [ 'WebGUI::Asset::Template' ],
} );
for my $assetId ( @{ $assetIds } ) {
my $asset = WebGUI::Asset->newByDynamicClass( $session, $assetId );
if ( !$asset ) {
print "Couldn't instantiate asset with ID '$assetId'. Please check package '$file' for corruption.\n";
next;
}
$asset->update( { isDefault => 1 } );
}
return;
}
#-------------------------------------------------
sub start {
my $configFile;
$|=1; #disable output buffering
GetOptions(
'configFile=s'=>\$configFile,
'quiet'=>\$quiet
);
my $session = WebGUI::Session->open($webguiRoot,$configFile);
$session->user({userId=>3});
my $versionTag = WebGUI::VersionTag->getWorking($session);
$versionTag->set({name=>"Upgrade to ".$toVersion});
return $session;
}
#-------------------------------------------------
sub finish {
my $session = shift;
updateTemplates($session);
my $versionTag = WebGUI::VersionTag->getWorking($session);
$versionTag->commit;
$session->db->write("insert into webguiVersion values (".$session->db->quote($toVersion).",'upgrade',".$session->datetime->time().")");
$session->close();
}
#-------------------------------------------------
sub updateTemplates {
my $session = shift;
return undef unless (-d "packages-".$toVersion);
print "\tUpdating packages.\n" unless ($quiet);
opendir(DIR,"packages-".$toVersion);
my @files = readdir(DIR);
closedir(DIR);
my $newFolder = undef;
foreach my $file (@files) {
next unless ($file =~ /\.wgpkg$/);
# Fix the filename to include a path
$file = "packages-" . $toVersion . "/" . $file;
addPackage( $session, $file );
}
}
#vim:ft=perl