From cfde9fcbf5d5e51acb4a68c620186d46bb7755e0 Mon Sep 17 00:00:00 2001 From: Martin Kamerbeek Date: Wed, 27 Nov 2002 14:42:38 +0000 Subject: [PATCH] Adding snippets preview functionality. --- docs/upgrades/upgrade_4.8.0-4.9.0.sql | 2 +- lib/WebGUI/Operation/Collateral.pm | 11 ++++++++--- lib/WebGUI/Operation/Settings.pm | 1 + 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/docs/upgrades/upgrade_4.8.0-4.9.0.sql b/docs/upgrades/upgrade_4.8.0-4.9.0.sql index 6cab69ec8..391632156 100644 --- a/docs/upgrades/upgrade_4.8.0-4.9.0.sql +++ b/docs/upgrades/upgrade_4.8.0-4.9.0.sql @@ -955,7 +955,7 @@ INSERT INTO template VALUES (1,'Default Link List','\r\n INSERT INTO template VALUES (2,'Unordered List','\r\n

\r\n
\r\n\r\n\r\n

\r\n\r\n\r\n\r\n \">

\r\n\r\n\r\n

    \r\n\r\n
  • \r\n \r\n \r\n \r\n \r\n \r\n target=\"_blank\"\r\n \r\n >\r\n\r\n \r\n - \r\n \r\n
  • \r\n
    \r\n','LinkList'); INSERT INTO template VALUES (3,'Ordered List','\r\n

    \r\n
    \r\n\r\n\r\n

    \r\n\r\n\r\n\r\n \">

    \r\n\r\n\r\n

      \r\n\r\n
    1. \r\n \r\n \r\n \r\n\r\n \r\n target=\"_blank\"\r\n \r\n >\r\n\r\n \r\n - \r\n \r\n
    2. \r\n
      \r\n
    ','LinkList'); INSERT INTO template VALUES (4,'Descriptive','\r\n

    \r\n
    \r\n\r\n\r\n

    \r\n\r\n\r\n\r\n \">

    \r\n\r\n\r\n\r\n \r\n
    \r\n
    \r\n\r\n \r\n target=\"_blank\"\r\n \r\n >\r\n\r\n \r\n - \r\n \r\n

    \r\n\r\n','LinkList'); - +insert into settings (name, value) values ('snippetsPreviewLength'', 30); diff --git a/lib/WebGUI/Operation/Collateral.pm b/lib/WebGUI/Operation/Collateral.pm index 3d6a000db..4ac72abcf 100644 --- a/lib/WebGUI/Operation/Collateral.pm +++ b/lib/WebGUI/Operation/Collateral.pm @@ -32,6 +32,7 @@ use WebGUI::Session; use WebGUI::SQL; use Tie::IxHash; use WebGUI::URL; +use WebGUI::HTML; our @ISA = qw(Exporter); our @EXPORT = qw(&www_editCollateral &www_editCollateralSave &www_deleteCollateral @@ -276,7 +277,6 @@ sub www_editCollateralSave { $file = WebGUI::Attachment->new("","images",$session{form}{cid}); $file->save("filename", $thumbnailSize); } else { - print "

    thumbnailsize: $thumbnailSize

    "; $file = WebGUI::Attachment->new($collateral->{filename},"images", $session{form}{cid}); WebGUI::Attachment::_createThumbnail($file, $thumbnailSize); } @@ -372,7 +372,7 @@ sub www_editCollateralFolderSave { #------------------------------------------------------------------- sub www_listCollateral { return WebGUI::Privilege::insufficient unless (WebGUI::Privilege::isInGroup(4)); - my (%type, %user, $f, $row, $data, $sth, $url, $output, $parent, $p, $thumbnail, $file, $page, $constraints, $folderId); + my (%type, %user, $f, $row, $data, $sth, $url, $output, $parent, $p, $thumbnail, $file, $page, $constraints, $folderId, $crCount); tie %type, 'Tie::IxHash'; tie %user, 'Tie::IxHash'; %type = ( @@ -396,7 +396,7 @@ sub www_listCollateral { $constraints .= " and collateralType=".quote($session{scratch}{collateralType}) if ($session{scratch}{collateralType}); $constraints .= " and name like ".quote('%'.$session{scratch}{keyword}.'%') if ($session{scratch}{keyword}); $p = WebGUI::Paginator->new(WebGUI::URL::page('op=listCollateral'),[],"",$session{scratch}{collateralPageNumber}); - $p->setDataByQuery("select collateralId, name, filename, collateralType, dateUploaded, username + $p->setDataByQuery("select collateralId, name, filename, collateralType, dateUploaded, username, parameters from collateral where $constraints order by name"); $page = $p->getPageData; $output = helpIcon(49); @@ -456,6 +456,11 @@ sub www_listCollateral { } elsif ($row->{filename} ne "" && $row->{collateralType} eq "file") { $file = WebGUI::Attachment->new($row->{filename},"images",$row->{collateralId}); $thumbnail = ''; + } elsif ($row->{collateralType} eq "snippet") { + $crCount = $row->{parameters} =~ s/(\n[^\n]\r?|\r[^\r]\n?)/\↵/gs; + $row->{parameters} = WebGUI::HTML::filter($row->{parameters},'all'); + $thumbnail = substr($row->{parameters},0,$session{setting}{snippetsPreviewLength}+$crCount*6); + $thumbnail .= '...' if (length($row->{parameters}) > $session{setting}{snippetsPreviewLength}); } else { $thumbnail = ""; } diff --git a/lib/WebGUI/Operation/Settings.pm b/lib/WebGUI/Operation/Settings.pm index dc2605748..5c1638e51 100644 --- a/lib/WebGUI/Operation/Settings.pm +++ b/lib/WebGUI/Operation/Settings.pm @@ -105,6 +105,7 @@ sub www_editContentSettings { $f->integer("maxAttachmentSize",WebGUI::International::get(130),$session{setting}{maxAttachmentSize}); $f->integer("maxImageSize",WebGUI::International::get(583),$session{setting}{maxImageSize}); $f->integer("thumbnailSize",WebGUI::International::get(406),$session{setting}{thumbnailSize}); + $f->integer("snippetsPreviewLength",'Snippets preview length',$session{setting}{snippetsPreviewLength}); $f->integer("textAreaRows",WebGUI::International::get(463),$session{setting}{textAreaRows}); $f->integer("textAreaCols",WebGUI::International::get(464),$session{setting}{textAreaCols}); $f->integer("textBoxSize",WebGUI::International::get(465),$session{setting}{textBoxSize});