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: Cannot delete private message (Diona Kidd, Knowmad Technologies)
- fix: Workflow activities don't pick up new default values - fix: Workflow activities don't pick up new default values
- add: Friends Network - 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: 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 7.4.11
- fix: Delete this entry link in data form header broken - 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 versions. Be sure to heed the warnings contained herein as they will
save you many hours of grief. 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 7.4.11
-------------------------------------------------------------------- --------------------------------------------------------------------
* The 7.4.8 upgrade script had an error for sites using Dashboards. * 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"); @cmsList = $self->session->form->checkList("listingId");
} }
my ($style, $url) = ($self->session->style, $self->session->url); 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 ( %var, @prodcol, @datecol);
my $max = $self->session->user->isInGroup($self->get("privilegedGroup")) ? $self->get("maxComparisonsPrivileged") : $self->get("maxComparisons"); my $max = $self->session->user->isInGroup($self->get("privilegedGroup")) ? $self->get("maxComparisonsPrivileged") : $self->get("maxComparisons");
$var{isTooMany} = (scalar(@cmsList)>$max); $var{isTooMany} = (scalar(@cmsList)>$max);

View file

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