merging 7.4 changes

This commit is contained in:
Graham Knop 2007-11-01 18:19:07 +00:00
parent 397783f15d
commit 0d8a33c0ea
10 changed files with 450 additions and 15 deletions

View file

@ -5,8 +5,11 @@
- fix: Cannot delete private message (Diona Kidd, Knowmad Technologies)
- fix: Workflow activities don't pick up new default values
- add: Friends Network
- fix: event end time not time zone adjusted properly
7.4.12
- fix: extra empty/grey area at the bottom of pages
- fix: event end time not time zone adjusted properly
- fix: Matrix search view doesn't display hover help properly
7.4.11
- fix: Delete this entry link in data form header broken

View file

@ -7,6 +7,12 @@ upgrading from one version to the next, or even between multiple
versions. Be sure to heed the warnings contained herein as they will
save you many hours of grief.
7.4.12
--------------------------------------------------------------------
* Any customizations made to the Matrix default Search, Compare or
Detailed listing templates will be lost. Please back up your
custom templates before running the upgrade.
7.4.11
--------------------------------------------------------------------
* The 7.4.8 upgrade script had an error for sites using Dashboards.

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,87 @@
#matrixtmpl000000000002
<h2>Comparison</h2>
<table cellpadding="0" cellspacing="0" border="0" style="font-size: 11px; font-family: helvetica, arial, sans-serif;">
<tr>
<td valign="top"><tmpl_var compare.form></td>
<td style="width:10px;">&nbsp;</td>
<td style="width:3px;background-color:silver;">&nbsp;</td>
<td style="width:10px;">&nbsp;</td>
<td valign="top">
<tmpl_if isTooMany>
You tried to compare too many listings. Please choose <tmpl_var maxCompares> or less at a time.
</tmpl_if>
<tmpl_if isTooFew>
You must choose at least two products to compare. Less than two isn't much of a comparison.
</tmpl_if>
<tmpl_unless isTooFew><tmpl_unless isTooMany>
<table style="font-size: 11px; font-family: helvetica, arial, sans-serif;" cellpadding="2" cellspacing="2" border="0">
<tr>
<td style="border-bottom:solid gray 1px;font-weight:bold;font-size:13px;">Product</td>
<tmpl_loop product_loop>
<td style="border-bottom:solid gray 1px;"><a href="<tmpl_var url>"><tmpl_var name> <tmpl_var version></a></td>
</tmpl_loop>
</tr>
<tr>
<td class="lastUpdated">Last Updated</td>
<tmpl_loop lastupdated_loop>
<td class="lastUpdated" style="text-align:center;"><tmpl_var lastupdated></td>
</tmpl_loop>
</tr>
<tmpl_loop category_loop>
<tr><td class="category"><b><tmpl_var category></b></td>
<tmpl_loop product_loop>
<td align="center"><tmpl_var name></td>
</tmpl_loop>
</tr>
<tmpl_loop row_loop>
<tr
<tmpl_if __ODD__>
class="odd"
<tmpl_else>
class="even"
</tmpl_if>
>
<tmpl_loop column_loop>
<td class="<tmpl_var class>">
<tmpl_var value>
<tmpl_if description>
<div class="wg-hoverhelp"><tmpl_var description></div>
</tmpl_if>
</td>
</tmpl_loop>
</tr>
</tmpl_loop>
</tmpl_loop>
</table>
</tmpl_unless></tmpl_unless>
</td></tr></table>
~~~
<link href="/extras/yui/build/container/assets/container.css" rel="stylesheet" type="text/css" />
<link href="/extras/hoverhelp.css" rel="stylesheet" type="text/css" />
<script src="/extras/yui/build/yahoo/yahoo-min.js" type="text/javascript"></script>
<script src="/extras/yui/build/dom/dom-min.js" type="text/javascript"></script>
<script src="/extras/yui/build/event/event-min.js" type="text/javascript"></script>
<script src="/extras/yui/build/container/container-min.js" type="text/javascript"></script>
<script src="/extras/hoverhelp.js" type="text/javascript"></script>
<style type="text/css">
.lastUpdated {
background-color:#F0F0F0;
}
.category {
font-size:13px;
}
</style>

View file

@ -0,0 +1,109 @@
#matrixtmpl000000000003
<h2><tmpl_var productName></h2>
<table class="content" border="0" cellspacing="5">
<tr><td valign="top">
<table class="content">
<tr><td><b>Web Site</b></td><td><a onclick="window.open('<tmpl_var productUrl.click>')" href="#"><tmpl_var productUrl></a></td></tr>
<tr><td><b>Version Number</b></td><td><tmpl_var versionNumber></td></tr>
<tr><td><b>Manufacturer</b></td><td><a onclick="window.open('<tmpl_var manufacturerUrl.click>')" href="#"><tmpl_var manufacturerName></a></td></tr>
<tr><td><b>Last Updated</b></td><td><tmpl_var lastUpdated.date></td></tr>
<tr><td><b>Clicks</b></td><td><tmpl_var clicks></td></tr>
<tr><td><b>Views</b></td><td><tmpl_var views></td></tr>
<tr><td><b>Compares</b></td><td><tmpl_var compares></td></tr>
<tr><td><b>Screenshot</b></td><td><a href="<tmpl_var screenshot>"><img src="<tmpl_var thumbnail>" alt="Screenshot"`></a></td></tr>
</table>
</td>
<td valign="top" style="background-color:silver;">&nbsp;</td>
<td valign="top">
<tmpl_if description>
<b>Description</b><br />
<tmpl_var description><br /><br />
</tmpl_if>
<b>Contact Maintainer</b><br />
<tmpl_if email.wasSent>
<div style="color: green;">Message sent.<br /></div>
</tmpl_if>
<tmpl_var email.form>
</td>
<td valign="top" style="background-color:silver;">&nbsp;</td>
<td valign="top">
<tmpl_var ratings>
</td>
</tr>
</table>
<p />
<table width="100%" class="content">
<tr>
<td valign="top" style="width:50%">
<span class="category">Features</span>
<table class="content" width="180">
<tmpl_loop features_loop>
<tr<tmpl_if __ODD__> class="odd"<tmpl_else> class="even"</tmpl_if>>
<td><tmpl_var label><div class="wg-hoverhelp"><tmpl_var description></div></td>
<td><tmpl_var value></td>
</tr>
</tmpl_loop>
<tr>
<td>&#160;</td>
<td>&#160;</td>
</tr>
</table>
<p />
</td>
<td valign="top" style="width:50%;">
<span class="category">Benefits</span>
<table class="content" width="180">
<tmpl_loop benefits_loop>
<tr<tmpl_if __ODD__> class="odd"<tmpl_else> class="even"</tmpl_if>>
<td><tmpl_var label><div class="wg-hoverhelp"><tmpl_var description></div></td>
<td class="<tmpl_var class>"><tmpl_var value></td>
</tr>
</tmpl_loop>
<tr>
<td>&#160;</td>
<td>&#160;</td>
</tr>
</table>
</td>
</tr>
</table>
<p />
<tmpl_var discussion>
<tmpl_if user.canEdit>
<br /> <hr /><a href="<tmpl_var edit.url>">Edit this listing.</a> <br />
</tmpl_if>
<tmpl_if user.canApprove>
<tmpl_if isPending>
<a href="<tmpl_var approve.url>">Approve this listing.</a><br />
</tmpl_if>
<a href="<tmpl_var delete.url>">Delete this listing.</a><br />
</tmpl_if>
~~~
<link href="/extras/yui/build/container/assets/container.css" rel="stylesheet" type="text/css" />
<link href="/extras/hoverhelp.css" rel="stylesheet" type="text/css" />
<script src="/extras/yui/build/yahoo/yahoo-min.js" type="text/javascript"></script>
<script src="/extras/yui/build/dom/dom-min.js" type="text/javascript"></script>
<script src="/extras/yui/build/event/event-min.js" type="text/javascript"></script>
<script src="/extras/yui/build/container/container-min.js" type="text/javascript"></script>
<script src="/extras/hoverhelp.js" type="text/javascript"></script>
<style type="text/css">
.ratingForm {
font-size: 9px;
}
.statBox {
width:100%;
}
</style>

View file

@ -0,0 +1,109 @@
#matrixtmpl000000000005
<h2>Search The Matrix</h2>
<tmpl_if isTooFew>
<p class="fontSettings">Your search returned no results. Try specifying a few less criteria.</p>
</tmpl_if>
<tmpl_if isTooMany>
<p class="fontSettings">
Your search returned too many results. Either select up to <tmpl_var maxCompares> products from the list below, or specify more critera.
</p>
</tmpl_if>
<table width="100%" class="matrixSearch" border="0">
<tr>
<td valign="top">
<tmpl_var compare.form>
</td>
<td valign="top">
<tmpl_var form.header>
<tmpl_var form.submit>
<table width="100%" class="content">
<tr>
<td valign="top" style="width:50%;">
<span class="category">Features</span>
<table class="content" width="180">
<tmpl_if features_loop>
<tmpl_loop features_loop>
<tr<tmpl_if __ODD__> class="odd"<tmpl_else> class="even"</tmpl_if>>
<td><tmpl_var label><div class="wg-hoverhelp"><tmpl_var description></div></td>
<td><tmpl_var form></td>
</tr>
</tmpl_loop>
<tmpl_else>
<tr><td>&#160;</td></tr>
</tmpl_if>
</table>
</td>
<td valign="top" style="width:50%;">
<span class="category">Benefits</span>
<table class="content">
<tmpl_if benefits_loop>
<tmpl_loop benefits_loop>
<tr<tmpl_if __ODD__> class="odd"<tmpl_else> class="even"</tmpl_if>>
<td><tmpl_var label><div class="wg-hoverhelp"><tmpl_var description></div></td>
<td><tmpl_var form></td>
</tr>
</tmpl_loop>
<tmpl_else>
<tr><td>&#160;</td></tr>
</tmpl_if>
</table>
</td>
</tr>
</table>
<tmpl_var form.submit>
</div>
<tmpl_var form.footer>
</td></tr></table>
~~~
<link href="/extras/yui/build/container/assets/container.css" rel="stylesheet" type="text/css" />
<link href="/extras/hoverhelp.css" rel="stylesheet" type="text/css" />
<script src="/extras/yui/build/yahoo/yahoo-min.js" type="text/javascript"></script>
<script src="/extras/yui/build/dom/dom-min.js" type="text/javascript"></script>
<script src="/extras/yui/build/event/event-min.js" type="text/javascript"></script>
<script src="/extras/yui/build/container/container-min.js" type="text/javascript"></script>
<script src="/extras/hoverhelp.js" type="text/javascript"></script>
<style type="text/css">
h2 {
font-family:arial;
}
.fontSettings {
font-size:9pt;
font-family:arial;
}
.matrixSearch td {
font-size:9pt;
font-family:arial;
}
.matrixSearch .leftColumn {
width:48%;
}
.matrixSearch .grayBox {
background-color:#DADADA;
padding:3px;
-moz-box-sizing:border-box;
border-bottom:solid gray 2px;
}
.matrixSearch .stats .columnOne{
width:30%;
}
.matrixSearch .stats .columnTwo{
width:20%;
}
.matrixSearch .stats .columnThree{
width:50%;
}
.hrStyle {
border-bottom:solid black 1px;
height:1px;
width:100%;
}
</style>

View file

@ -0,0 +1,125 @@
#-------------------------------------------------------------------
# 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
#-------------------------------------------------------------------
use lib "../../lib";
use strict;
use Getopt::Long;
use WebGUI::Session;
my $toVersion = "7.4.12"; # make this match what version you're going to
my $quiet; # this line required
my $session = start(); # this line required
# upgrade functions go here
finish($session); # this line required
##-------------------------------------------------
#sub exampleFunction {
# my $session = shift;
# print "\tWe're doing some stuff here that you should know about.\n" unless ($quiet);
# # and here's our code
#}
# ---- DO NOT EDIT BELOW THIS LINE ----
#-------------------------------------------------
sub start {
my $configFile;
$|=1; #disable output buffering
GetOptions(
'configFile=s'=>\$configFile,
'quiet'=>\$quiet
);
my $session = WebGUI::Session->open("../..",$configFile);
$session->user({userId=>3});
my $versionTag = WebGUI::VersionTag->getWorking($session);
$versionTag->set({name=>"Upgrade to ".$toVersion});
$session->db->write("insert into webguiVersion values (".$session->db->quote($toVersion).",'upgrade',".$session->datetime->time().")");
updateTemplates($session);
return $session;
}
#-------------------------------------------------
sub finish {
my $session = shift;
my $versionTag = WebGUI::VersionTag->getWorking($session);
$versionTag->commit;
$session->close();
}
#-------------------------------------------------
sub updateTemplates {
my $session = shift;
return undef unless (-d "templates-".$toVersion);
print "\tUpdating templates.\n" unless ($quiet);
opendir(DIR,"templates-".$toVersion);
my @files = readdir(DIR);
closedir(DIR);
my $importNode = WebGUI::Asset->getImportNode($session);
my $newFolder = undef;
foreach my $file (@files) {
next unless ($file =~ /\.tmpl$/);
open(FILE,"<templates-".$toVersion."/".$file);
my $first = 1;
my $create = 0;
my $head = 0;
my %properties = (className=>"WebGUI::Asset::Template");
while (my $line = <FILE>) {
if ($first) {
$line =~ m/^\#(.*)$/;
$properties{id} = $1;
$first = 0;
} elsif ($line =~ m/^\#create$/) {
$create = 1;
} elsif ($line =~ m/^\#(.*):(.*)$/) {
$properties{$1} = $2;
} elsif ($line =~ m/^~~~$/) {
$head = 1;
} elsif ($head) {
$properties{headBlock} .= $line;
} else {
$properties{template} .= $line;
}
}
close(FILE);
if ($create) {
$newFolder = createNewTemplatesFolder($importNode) unless (defined $newFolder);
my $template = $newFolder->addChild(\%properties, $properties{id});
} else {
my $template = WebGUI::Asset->new($session,$properties{id}, "WebGUI::Asset::Template");
if (defined $template) {
my $newRevision = $template->addRevision(\%properties);
}
}
}
}
#-------------------------------------------------
sub createNewTemplatesFolder {
my $importNode = shift;
my $newFolder = $importNode->addChild({
className=>"WebGUI::Asset::Wobject::Folder",
title => $toVersion." New Templates",
menuTitle => $toVersion." New Templates",
url=> $toVersion."_new_templates",
groupIdView=>"12"
});
return $newFolder;
}

View file

@ -282,13 +282,6 @@ sub www_compare {
@cmsList = $self->session->form->checkList("listingId");
}
my ($style, $url) = ($self->session->style, $self->session->url);
$style->setLink($url->extras('/yui/build/container/assets/container.css'),{ type=>'text/css', rel=>"stylesheet" });
$style->setLink($url->extras('/hoverhelp.css'),{ type=>'text/css', rel=>"stylesheet" });
$style->setScript($url->extras('/yui/build/yahoo/yahoo-min.js'),{ type=>'text/javascript' });
$style->setScript($url->extras('/yui/build/dom/dom-min.js'),{ type=>'text/javascript' });
$style->setScript($url->extras('/yui/build/event/event-min.js'),{ type=>'text/javascript' });
$style->setScript($url->extras('/yui/build/container/container-min.js'),{ type=>'text/javascript' });
$style->setScript($url->extras('/hoverhelp.js'),{ type=>'text/javascript' });
my ( %var, @prodcol, @datecol);
my $max = $self->session->user->isInGroup($self->get("privilegedGroup")) ? $self->get("maxComparisonsPrivileged") : $self->get("maxComparisons");
$var{isTooMany} = (scalar(@cmsList)>$max);

View file

@ -1,7 +1,10 @@
var hoverHelpLoaded;
YAHOO.util.Event.onDOMReady(function () {
if (hoverHelpLoaded)
return;
hoverHelpLoaded = true;
var tips = YAHOO.util.Dom.getElementsByClassName('wg-hoverhelp');
var i;
for (i = 0; i < tips.length; i++) {
for (var i = tips.length; i--; ) {
var myTip = new YAHOO.widget.Tooltip(tips[i], {
autodismissdelay: 1000000,
context: tips[i].parentNode