Files
Phraseanet/resources/proxies/__CG__AlchemyPhraseaModelEntitiesBasketElement.php
jygaulier fbccec009e PHRAS-3602_shared-baskets-step1 WIP DO NOT MERGE (#3929)
* PHRAS-3602 : migrate validations to baskets
WIP [skip ci]

* PHRAS-3602 : migrate validations code to baskets code (wip)
WIP [skip ci]

* PHRAS-3602 : migrate validations to baskets
WIP [skip ci]

* PHRAS-3602 : migrate validations to baskets
WIP [skip ci]

* PHRAS-3602 : fake commit to run tests

* PHRAS-3602 : migrate validations to baskets
fix typo

* PHRAS-3602 : migrate validations to baskets
fixed (some) tests

* PHRAS-3602 : migrate validations to baskets
fixed (some) tests

* PHRAS-3602 : migrate validations to baskets
fixed (some) tests. need to remove method():return_type signature because of old phpunit which does not mock it

* PHRAS-3602 : migrate validations to baskets
fix

* PHRAS-3602 : migrate validations to baskets
fix err 500 when a "vote" (feedback) is deployed in wz

* PHRAS-3602 : migrate validations to baskets
fix missing votes for element+participant
fix update vote dates on basket

* PHRAS-3602 : ux
bump production-client to 34
WIP [skip ci]

* PHRAS-3602 : rebase (bump production-client to 37)
WIP [skip ci]

* PHRAS-3602 : refacto css/twig/templates/... ; replace many png's by fonts
WIP [skip ci]

* PHRAS-3602 : fix icon / css
WIP

* PHRAS-3602 : better icon align ; back button color
fix : save button after adding a user
WIP [skip ci]

* PHRAS-3602 : restore sharebasket controller
todo : implement modification right ; owner is participant ?
WIP [skip ci]

* PHRAS-3602 : set "canModifiy" ; cleanup
WIP [skip ci]

* PHRAS-3602 : respect "can_modify" on shared basket
WIP [skip ci]

* PHRAS-3602 : fix badge icon bg ; fix button css
WIP [skip ci]

* PHRAS-3602 : fix css & cleanup
WIP [skip ci]

* PHRAS-3602 : fix 500 on preview/feedback tab
WIP [skip ci]

* PHRAS-3602 : fix allow to display dlg without selection

* PHRAS-3602 : bump version to 4.1.6-rc1 ; prodclient=38
WIP [skip ci]

* PHRAS-3602 : factorize baskets menu (wip)
WIP [skip ci]

* PHRAS-3602 : modify already shared or feedback basket (general menu)
4th icon on badges (vote != modify)
quitshare option (todo back)
allow fa-icons in toolbar

WIP [skip ci]

* PHRAS-3602 : add share end-date (todo:db write)
add 4th general toggle button
fix badge selection bug
fix css badges zone (form position)
WIP [skip ci]

* PHRAS-3602 : big refacto to use "sharebasket" vocab.
fusion "feedback/sharebasket" removed "feedback"
adaptative ux: 1 "can_agree" ==> feedback display
bump production-client to v50
todo: save shr/fbk end-dates
todo: rename "pushXXX" to pushAndShare ?
WIP [skip ci]

* PHRAS-3602 : share / feedback expiration dates are saved in db
date pickers with delta menu
better adaptive ux
todo: move select general togglers
WIP [skip ci]

* PHRAS-3602 : revert validation* tables (remove "dead" rename)
drop all foreign keys from validation*
WIP [skip ci]

* PHRAS-3602 : restore deleted fields in validation, regenerate proxies
WIP [skip ci]

* PHRAS-3602 : fix initiator_id
WIP [skip ci]

* fix initiator_id-bis

* PHRAS-3602 : css for input-text with glued button
dynamic load of users-lists (left zone) = less duplicated code
fix : users-lists  works after refresh
WIP [skip ci]

* PHRAS-3602 : fix users-lists manager (orange) : go flex !

* PHRAS-3602 : empty dist to ease rebase
WIP [skip ci]

* PHRAS-3602 : rebase
WIP [skip ci]

* PHRAS-3602 : new ux for "owner"
feedback mode is an independent toggle
fix "missing mandatory parameter"
WIP [skip ci]

* PHRAS-3602 : fix css of owner badge
WIP [skip ci]

* PHRAS-3602 : fix handling of feedback initiator
WIP [skip ci]

* PHRAS-3602 : better wss to follow "skins"
full roboto
removed useless class "with-button"
WIP [skip ci]

* PHRAS-3602 : fix "a token require a validation"
temporary fix 500 due to send email to (null) vote-initiator for simple share
todo: send a specific email for simple share
WIP [skip ci]

* PHRAS-3602 : different emails depending if user can vote or not
WIP [skip ci]

* PHRAS-3602 : expired shared baskets removed from wz
WIP [skip ci]

* PHRAS-3602 : fix logic error on last sql
WIP [skip ci]

* PHRAS-3602 : fix missing shared baskets on wz
WIP [skip ci]

* PHRAS-3602 : fix blinking of wz/basket detail
now only the title:hover displays detail
WIP [skip ci]

* PHRAS-3602 : rebase
WIP [skip ci]

* PHRAS-3602 : update basket proxy
WIP [skip ci]

* PHRAS-3602 : fix forever "unread" basket
WIP [skip ci]

* PHRAS-3602 : fix display of unread basket ; sync "eye" icon with css change
WIP [skip ci]

* PHRAS-3602 : "quitshare" action works
WIP [skip ci]

* PHRAS-3602 : missing dist files
WIP [skip ci]

* PHRAS-3602 : cleanup & run ci

* PHRAS-3602 : disable failing unit test ; remove blue on onread basket

* PHRAS-3602 : separate "vote" & "share" emails templates & u-tests

* PHRAS-3602 : add 2 icons "stack" to icomoon set
WIP [skip ci]

* PHRAS-3602 : fix test

* PHRAS-3602 : fix test ; add test for simple share email notification

* PHRAS-3602 : changed proxy

* PHRAS-3602 : colored basket icons
WIP [skip ci]

* PHRAS-3602 : circle basket icons
WIP [skip ci]

* PHRAS-3602 : fix wz filters, add "share" filter.
todo: fix fr writing (new string)
WIP [skip ci]

* PHRAS-3602 : fix "share" dichotomy : use "shared" for wz filter
WIP [skip ci]

* PHRAS-3602 : fix PHRAS-3624 ; PHRAS-3623 ; now adding/removing a user from user list is immediate (no more save button)
WIP [skip ci]

* PHRAS-3602 : fix PHRAS-3647 ; shared basket are listed in api (for list and related record)

* PHRAS-3602 : fix due to failing test

* PHRAS-3602 : fix: can load a 1000 users list
todo : move slow code to worker

* PHRAS-3602 : fix due to failing test

* PHRAS-3468 : (fixed in 3602) fix basket content still visible when baskets are hidden (wz-filter)

* PHRAS-3602 : add "wip" baskets with notification & lock
todo : move slow code from message to worker

* PHRAS-3602 : fix tests due to accidental rename

* PHRAS-3602 : fix : menu closes when mouse out : bump to 4.1.6-rc3
todo : fast move to another basket makes the menu appear on top ?

* add shareBasket worker

* fix test

* PHRAS-3602 : fix : rights buttons on badges now works for users added from search (did work only from loading list)

* PHRAS-3590

Co-authored-by: aynsix <asr@esokia-webagency.com>
Co-authored-by: Nicolas Maillat <maillat@alchemy.fr>
2022-04-07 17:07:43 +02:00

401 lines
11 KiB
PHP

<?php
namespace Alchemy\Phrasea\Model\Proxies\__CG__\Alchemy\Phrasea\Model\Entities;
/**
* DO NOT EDIT THIS FILE - IT WAS CREATED BY DOCTRINE'S PROXY GENERATOR
*/
class BasketElement extends \Alchemy\Phrasea\Model\Entities\BasketElement implements \Doctrine\ORM\Proxy\Proxy
{
/**
* @var \Closure the callback responsible for loading properties in the proxy object. This callback is called with
* three parameters, being respectively the proxy object to be initialized, the method that triggered the
* initialization process and an array of ordered parameters that were passed to that method.
*
* @see \Doctrine\Common\Persistence\Proxy::__setInitializer
*/
public $__initializer__;
/**
* @var \Closure the callback responsible of loading properties that need to be copied in the cloned object
*
* @see \Doctrine\Common\Persistence\Proxy::__setCloner
*/
public $__cloner__;
/**
* @var boolean flag indicating if this object was already initialized
*
* @see \Doctrine\Common\Persistence\Proxy::__isInitialized
*/
public $__isInitialized__ = false;
/**
* @var array properties to be lazy loaded, with keys being the property
* names and values being their default values
*
* @see \Doctrine\Common\Persistence\Proxy::__getLazyProperties
*/
public static $lazyPropertiesDefaults = [];
/**
* @param \Closure $initializer
* @param \Closure $cloner
*/
public function __construct($initializer = null, $cloner = null)
{
$this->__initializer__ = $initializer;
$this->__cloner__ = $cloner;
}
/**
*
* @return array
*/
public function __sleep()
{
if ($this->__isInitialized__) {
return ['__isInitialized__', '' . "\0" . 'Alchemy\\Phrasea\\Model\\Entities\\BasketElement' . "\0" . 'id', '' . "\0" . 'Alchemy\\Phrasea\\Model\\Entities\\BasketElement' . "\0" . 'record_id', '' . "\0" . 'Alchemy\\Phrasea\\Model\\Entities\\BasketElement' . "\0" . 'sbas_id', '' . "\0" . 'Alchemy\\Phrasea\\Model\\Entities\\BasketElement' . "\0" . 'ord', '' . "\0" . 'Alchemy\\Phrasea\\Model\\Entities\\BasketElement' . "\0" . 'created', '' . "\0" . 'Alchemy\\Phrasea\\Model\\Entities\\BasketElement' . "\0" . 'updated', '' . "\0" . 'Alchemy\\Phrasea\\Model\\Entities\\BasketElement' . "\0" . 'votes', '' . "\0" . 'Alchemy\\Phrasea\\Model\\Entities\\BasketElement' . "\0" . 'basket'];
}
return ['__isInitialized__', '' . "\0" . 'Alchemy\\Phrasea\\Model\\Entities\\BasketElement' . "\0" . 'id', '' . "\0" . 'Alchemy\\Phrasea\\Model\\Entities\\BasketElement' . "\0" . 'record_id', '' . "\0" . 'Alchemy\\Phrasea\\Model\\Entities\\BasketElement' . "\0" . 'sbas_id', '' . "\0" . 'Alchemy\\Phrasea\\Model\\Entities\\BasketElement' . "\0" . 'ord', '' . "\0" . 'Alchemy\\Phrasea\\Model\\Entities\\BasketElement' . "\0" . 'created', '' . "\0" . 'Alchemy\\Phrasea\\Model\\Entities\\BasketElement' . "\0" . 'updated', '' . "\0" . 'Alchemy\\Phrasea\\Model\\Entities\\BasketElement' . "\0" . 'votes', '' . "\0" . 'Alchemy\\Phrasea\\Model\\Entities\\BasketElement' . "\0" . 'basket'];
}
/**
*
*/
public function __wakeup()
{
if ( ! $this->__isInitialized__) {
$this->__initializer__ = function (BasketElement $proxy) {
$proxy->__setInitializer(null);
$proxy->__setCloner(null);
$existingProperties = get_object_vars($proxy);
foreach ($proxy->__getLazyProperties() as $property => $defaultValue) {
if ( ! array_key_exists($property, $existingProperties)) {
$proxy->$property = $defaultValue;
}
}
};
}
}
/**
*
*/
public function __clone()
{
$this->__cloner__ && $this->__cloner__->__invoke($this, '__clone', []);
}
/**
* Forces initialization of the proxy
*/
public function __load()
{
$this->__initializer__ && $this->__initializer__->__invoke($this, '__load', []);
}
/**
* {@inheritDoc}
* @internal generated method: use only when explicitly handling proxy specific loading logic
*/
public function __isInitialized()
{
return $this->__isInitialized__;
}
/**
* {@inheritDoc}
* @internal generated method: use only when explicitly handling proxy specific loading logic
*/
public function __setInitialized($initialized)
{
$this->__isInitialized__ = $initialized;
}
/**
* {@inheritDoc}
* @internal generated method: use only when explicitly handling proxy specific loading logic
*/
public function __setInitializer(\Closure $initializer = null)
{
$this->__initializer__ = $initializer;
}
/**
* {@inheritDoc}
* @internal generated method: use only when explicitly handling proxy specific loading logic
*/
public function __getInitializer()
{
return $this->__initializer__;
}
/**
* {@inheritDoc}
* @internal generated method: use only when explicitly handling proxy specific loading logic
*/
public function __setCloner(\Closure $cloner = null)
{
$this->__cloner__ = $cloner;
}
/**
* {@inheritDoc}
* @internal generated method: use only when explicitly handling proxy specific cloning logic
*/
public function __getCloner()
{
return $this->__cloner__;
}
/**
* {@inheritDoc}
* @internal generated method: use only when explicitly handling proxy specific loading logic
* @static
*/
public function __getLazyProperties()
{
return self::$lazyPropertiesDefaults;
}
/**
* {@inheritDoc}
*/
public function getId()
{
if ($this->__isInitialized__ === false) {
return (int) parent::getId();
}
$this->__initializer__ && $this->__initializer__->__invoke($this, 'getId', []);
return parent::getId();
}
/**
* {@inheritDoc}
*/
public function setRecordId(int $recordId)
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'setRecordId', [$recordId]);
return parent::setRecordId($recordId);
}
/**
* {@inheritDoc}
*/
public function getRecordId()
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'getRecordId', []);
return parent::getRecordId();
}
/**
* {@inheritDoc}
*/
public function setSbasId(int $sbasId)
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'setSbasId', [$sbasId]);
return parent::setSbasId($sbasId);
}
/**
* {@inheritDoc}
*/
public function getSbasId()
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'getSbasId', []);
return parent::getSbasId();
}
/**
* {@inheritDoc}
*/
public function getRecord(\Alchemy\Phrasea\Application $app)
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'getRecord', [$app]);
return parent::getRecord($app);
}
/**
* {@inheritDoc}
*/
public function setRecord(\record_adapter $record)
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'setRecord', [$record]);
return parent::setRecord($record);
}
/**
* {@inheritDoc}
*/
public function setOrd(int $ord)
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'setOrd', [$ord]);
return parent::setOrd($ord);
}
/**
* {@inheritDoc}
*/
public function getOrd()
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'getOrd', []);
return parent::getOrd();
}
/**
* {@inheritDoc}
*/
public function setCreated(\DateTime $created)
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'setCreated', [$created]);
return parent::setCreated($created);
}
/**
* {@inheritDoc}
*/
public function getCreated()
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'getCreated', []);
return parent::getCreated();
}
/**
* {@inheritDoc}
*/
public function setUpdated(\DateTime $updated)
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'setUpdated', [$updated]);
return parent::setUpdated($updated);
}
/**
* {@inheritDoc}
*/
public function getUpdated()
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'getUpdated', []);
return parent::getUpdated();
}
/**
* {@inheritDoc}
*/
public function addVote(\Alchemy\Phrasea\Model\Entities\BasketElementVote $vote)
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'addVote', [$vote]);
return parent::addVote($vote);
}
/**
* {@inheritDoc}
*/
public function removeVote(\Alchemy\Phrasea\Model\Entities\BasketElementVote $vote)
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'removeVote', [$vote]);
return parent::removeVote($vote);
}
/**
* {@inheritDoc}
*/
public function getVotes()
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'getVotes', []);
return parent::getVotes();
}
/**
* {@inheritDoc}
*/
public function setBasket(\Alchemy\Phrasea\Model\Entities\Basket $basket = NULL)
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'setBasket', [$basket]);
return parent::setBasket($basket);
}
/**
* {@inheritDoc}
*/
public function getBasket()
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'getBasket', []);
return parent::getBasket();
}
/**
* {@inheritDoc}
*/
public function createVote(\Alchemy\Phrasea\Model\Entities\BasketParticipant $participant)
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'createVote', [$participant]);
return parent::createVote($participant);
}
/**
* {@inheritDoc}
*/
public function getUserVote(\Alchemy\Phrasea\Model\Entities\User $user, bool $createIfMissing)
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'getUserVote', [$user, $createIfMissing]);
return parent::getUserVote($user, $createIfMissing);
}
}