@@ -425,8 +425,12 @@ Gets an array reference of asset IDs for all the files in this album.
425
425
sub getFileIds {
426
426
my $self = shift ;
427
427
428
- if ( !$self -> session-> stow-> get( ' fileIds-' . $self -> getId ) ) {
429
- my $gallery = $self -> getParent;
428
+ # #Assets created by www_add do not have a lineage.
429
+ return [] unless $self -> lineage;
430
+ my $session = $self -> session;
431
+ $self -> getParent;
432
+
433
+ if ( !$session -> stow-> get( ' fileIds-' . $self -> getId ) ) {
430
434
431
435
# Deal with "pending" files.
432
436
my %pendingRules ;
@@ -437,7 +441,7 @@ sub getFileIds {
437
441
$pendingRules { statusToInclude } = [ ' pending' , ' approved' ];
438
442
$pendingRules { whereClause } = q{
439
443
(
440
- status = "approved" || ownerUserId = " } . $self -> session-> user-> userId . q{ "
444
+ status = "approved" || ownerUserId = } . $session -> db -> quote( $ session-> user-> userId) . q{
441
445
)
442
446
} ;
443
447
}
@@ -810,16 +814,18 @@ approval workflow.
810
814
811
815
=cut
812
816
813
- sub processEditForm {
817
+ override processEditForm => sub {
814
818
my $self = shift ;
815
819
my $form = $self -> session-> form;
816
820
my $errors = $self -> next::method || [];
817
821
822
+ $self -> processFileSynopsis;
823
+
818
824
# Return if error
819
825
return $errors if @$errors ;
820
826
821
827
# ## Passes all checks
822
- }
828
+ };
823
829
824
830
# ----------------------------------------------------------------------------
825
831
@@ -1382,17 +1388,13 @@ sub _moveFileAjaxRequest {
1382
1388
1383
1389
# ----------------------------------------------------------------------------
1384
1390
1385
- =head2 www_edit ( )
1391
+ =head2 getEditTemplate ( )
1386
1392
1387
1393
Show the form to add / edit a GalleryAlbum asset.
1388
1394
1389
- Due to the advanced requirements of this form, we will ALWAYS post back to
1390
- this page. This page will decide whether or not to make C<www_editSave >
1391
- handle things.
1392
-
1393
1395
=cut
1394
1396
1395
- sub www_edit {
1397
+ sub getEditTemplate {
1396
1398
my $self = shift ;
1397
1399
my $session = $self -> session;
1398
1400
my $form = $self -> session-> form;
@@ -1401,100 +1403,13 @@ sub www_edit {
1401
1403
1402
1404
return $session -> privilege-> insufficient unless $self -> canEdit;
1403
1405
1404
- # Handle the button that was pressed
1405
- # Save button
1406
- if ( $form -> get(" save" ) ) {
1407
- $self -> processFileSynopsis;
1408
- return $self -> www_editSave;
1409
- }
1410
- # Cancel button
1411
- elsif ( $form -> get(" cancel" ) ) {
1412
- return $self -> www_view;
1413
- }
1414
- # Promote the file
1415
- elsif ( grep { $_ =~ / ^promote-(.{22})$ / } $form -> param ) {
1416
- my $assetId = ( grep { $_ =~ / ^promote-(.{22})$ / } $form -> param )[0];
1417
- $assetId =~ s / ^promote-// ;
1418
- my $asset = WebGUI::Asset-> newById( $session , $assetId );
1419
- if ( $asset ) {
1420
- $asset -> promote;
1421
- }
1422
- else {
1423
- $session -> log -> error(" Couldn't promote asset '$assetId ' because we couldn't instantiate it." );
1424
- }
1425
- }
1426
- # Demote the file
1427
- elsif ( grep { $_ =~ / ^demote-(.{22})$ / } $form -> param ) {
1428
- my $assetId = ( grep { $_ =~ / ^demote-(.{22})$ / } $form -> param )[0];
1429
- $assetId =~ s / ^demote-// ;
1430
- my $asset = WebGUI::Asset-> newById( $session , $assetId );
1431
- if ( $asset ) {
1432
- $asset -> demote;
1433
- }
1434
- else {
1435
- $session -> log -> error(" Couldn't demote asset '$assetId ' because we couldn't instantiate it." );
1436
- }
1437
- }
1438
- # Rotate to the left
1439
- elsif ( grep { $_ =~ / ^rotateLeft-(.{22})$ / } $form -> param ) {
1440
- my $assetId = ( grep { $_ =~ / ^rotateLeft-(.{22})$ / } $form -> param )[0];
1441
- $assetId =~ s / ^rotateLeft-// ;
1442
- my $asset = eval { WebGUI::Asset-> newById( $session , $assetId ); };
1443
-
1444
- if ( ! Exception::Class-> caught() ) {
1445
- # Add revision and create a new version tag by doing so
1446
- my $tag = WebGUI::VersionTag-> create( $session , { workflowId => $asset -> getAutoCommitWorkflowId } );
1447
- my $newRevision = $asset -> addRevision({ tagId => $tag -> getId, status => " pending" });
1448
- $newRevision -> setVersionLock;
1449
- # Rotate photo (i.e. all attached image files) by 90° CCW
1450
- $newRevision -> rotate(-90);
1451
- # Auto-commit version tag
1452
- $newRevision -> requestAutoCommit;
1453
- }
1454
- else {
1455
- $session -> log -> error(" Couldn't rotate asset '$assetId ' because we couldn't instantiate it." );
1456
- }
1457
- }
1458
- # Rotate to the right
1459
- elsif ( grep { $_ =~ / ^rotateRight-(.{22})$ / } $form -> param ) {
1460
- my $assetId = ( grep { $_ =~ / ^rotateRight-(.{22})$ / } $form -> param )[0];
1461
- $assetId =~ s / ^rotateRight-// ;
1462
- my $asset = WebGUI::Asset-> newById( $session , $assetId );
1463
-
1464
- if ( Exception::Class-> caught() ) {
1465
- # Add revision and create a new version tag by doing so
1466
- my $tag = WebGUI::VersionTag-> create( $session , { workflowId => $asset -> getAutoCommitWorkflowId } );
1467
- my $newRevision = $asset -> addRevision({ tagId => $tag -> getId, status => " pending" });
1468
- $newRevision -> setVersionLock;
1469
- # Rotate photo (i.e. all attached image files) by 90° CW
1470
- $newRevision -> rotate(90);
1471
- # Auto-commit version tag
1472
- $newRevision -> requestAutoCommit;
1473
- }
1474
- else {
1475
- $session -> log -> error(" Couldn't rotate asset '$assetId ' because we couldn't instantiate it." );
1476
- }
1477
- }
1478
- # Delete the file
1479
- elsif ( grep { $_ =~ / ^delete-(.{22})$ / } $form -> param ) {
1480
- my $assetId = ( grep { $_ =~ / ^delete-(.{22})$ / } $form -> param )[0];
1481
- $assetId =~ s / ^delete-// ;
1482
- my $asset = WebGUI::Asset-> newById( $session , $assetId );
1483
- if ( $asset ) {
1484
- $asset -> purge;
1485
- }
1486
- else {
1487
- $session -> log -> error( " Couldn't delete asset '$assetId ' because we couldn't instanciate it." );
1488
- }
1489
- }
1490
-
1491
1406
# Generate the form
1492
1407
if ($form -> get(" func" ) eq " add" ) {
1493
1408
# Add page is exempt from our button handling code since it calls the Gallery www_editSave
1494
1409
$var -> { isNewAlbum } = 1;
1495
1410
$var -> { form_start }
1496
1411
= WebGUI::Form::formHeader( $session , {
1497
- action => $self -> getParent-> getUrl(' func=editSave ;assetId=new;class =' .__PACKAGE__ ),
1412
+ action => $self -> getParent-> getUrl(' func=addSave ;assetId=new;className =' .__PACKAGE__ ),
1498
1413
extras => ' name="galleryAlbumAdd"' ,
1499
1414
})
1500
1415
. WebGUI::Form::hidden( $session , {
@@ -1503,31 +1418,18 @@ sub www_edit {
1503
1418
});
1504
1419
1505
1420
# Put in the buttons that may ignore button handling code
1506
- $var -> { form_cancel }
1507
- = WebGUI::Form::button( $session , {
1508
- name => " cancel" ,
1509
- value => $i18n -> get(" cancel" ),
1510
- extras => ' onclick="history.go(-1)"' ,
1511
- });
1512
1421
}
1513
1422
else {
1514
1423
$var -> { form_start }
1515
1424
= WebGUI::Form::formHeader( $session , {
1516
- action => $self -> getUrl(' func=edit ' ),
1425
+ action => $self -> getUrl(' func=editSave ' ),
1517
1426
extras => ' name="galleryAlbumEdit"' ,
1518
1427
})
1519
1428
. WebGUI::Form::hidden( $session , {
1520
1429
name => " ownerUserId" ,
1521
1430
value => $self -> ownerUserId,
1522
1431
});
1523
1432
1524
- # Put in the buttons that may ignore button handling code
1525
- $var -> { form_cancel }
1526
- = WebGUI::Form::submit( $session , {
1527
- name => " cancel" ,
1528
- value => $i18n -> get(" cancel" ),
1529
- extras => ' onclick="history.go(-1)"' ,
1530
- });
1531
1433
}
1532
1434
$var -> { form_start }
1533
1435
.= WebGUI::Form::hidden( $session , {
@@ -1536,6 +1438,13 @@ sub www_edit {
1536
1438
})
1537
1439
;
1538
1440
1441
+ $var -> { form_cancel }
1442
+ = WebGUI::Form::submit( $session , {
1443
+ name => " cancel" ,
1444
+ value => $i18n -> get(" cancel" ),
1445
+ extras => ' onclick="history.go(-1)"' ,
1446
+ });
1447
+
1539
1448
$var -> { form_end }
1540
1449
= WebGUI::Form::formFooter( $session );
1541
1450
@@ -1576,45 +1485,6 @@ sub www_edit {
1576
1485
id => " assetIdThumbnail_$file ->{ assetId }" ,
1577
1486
} );
1578
1487
1579
- my $promoteLabel = $i18n -> get( ' Move Up' , ' Icon' );
1580
- $file -> { form_promote }
1581
- = WebGUI::Form::submit( $session , {
1582
- name => " promote-$file ->{assetId}" ,
1583
- value => $i18n -> get( ' Move Up' , ' Icon' ),
1584
- class => " promote" ,
1585
- });
1586
-
1587
- my $demoteLabel = $i18n -> get( ' Move Down' , ' Icon' );
1588
- $file -> { form_demote }
1589
- = WebGUI::Form::submit( $session , {
1590
- name => " demote-$file ->{assetId}" ,
1591
- value => $i18n -> get( ' Move Down' , ' Icon' ),
1592
- class => " demote" ,
1593
- });
1594
-
1595
- my $deleteConfirm = $i18n -> get( ' template delete message' , ' Asset_Photo' );
1596
- $file -> { form_delete }
1597
- = WebGUI::Form::submit( $session , {
1598
- name => " delete-$file ->{assetId}" ,
1599
- value => $i18n -> get( ' Delete' , ' Icon' ),
1600
- class => " delete" ,
1601
- extras => " onclick=\" return confirm('$deleteConfirm ')\" " ,
1602
- });
1603
-
1604
- $file -> { form_rotateLeft }
1605
- = WebGUI::Form::submit( $session , {
1606
- name => " rotateLeft-$file ->{assetId}" ,
1607
- value => $i18n -> get( ' rotate left' ),
1608
- class => " rotateLeft" ,
1609
- });
1610
-
1611
- $file -> { form_rotateRight }
1612
- = WebGUI::Form::submit( $session , {
1613
- name => " rotateRight-$file ->{assetId}" ,
1614
- value => $i18n -> get( ' rotate right' ),
1615
- class => " rotateRight" ,
1616
- });
1617
-
1618
1488
$file -> { form_synopsis }
1619
1489
= WebGUI::Form::HTMLArea( $session , {
1620
1490
name => " fileSynopsis_$file ->{assetId}" ,
@@ -1625,9 +1495,11 @@ sub www_edit {
1625
1495
});
1626
1496
}
1627
1497
1628
- return $self -> processStyle(
1629
- $self -> processTemplate( $var , $self -> getParent-> templateIdEditAlbum )
1630
- );
1498
+ my $gallery = $self -> getParent;
1499
+ my $template = WebGUI::Asset-> newById($session , $gallery -> templateIdEditAlbum);
1500
+ $template -> style($gallery -> getStyleTemplateId);
1501
+ $template -> setParam( %{ $var } );
1502
+ return $template ;
1631
1503
}
1632
1504
1633
1505
# ----------------------------------------------------------------------------
0 commit comments