|
|
|
@ -85,6 +85,15 @@ class CommunityController implements IAuthenticationRequired
|
|
|
|
|
]);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private function getMembers(Community $community): array
|
|
|
|
|
{
|
|
|
|
|
$members = iterator_to_array($this->communityMemberRepository->getAllByCommunity($community, true));
|
|
|
|
|
usort($members, function($a, $b) {
|
|
|
|
|
return strnatcmp($a->getUser()->getDisplayName(), $b->getUser()->getDisplayName());
|
|
|
|
|
});
|
|
|
|
|
return $members;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function newMember(): ?IContent
|
|
|
|
|
{
|
|
|
|
|
if (!$this->checkPermission(\Container::$request->query('communityId'), true, $community, $ownCommunityMember)) {
|
|
|
|
@ -151,6 +160,15 @@ class CommunityController implements IAuthenticationRequired
|
|
|
|
|
]);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private function getCurrencies(Community $community): array
|
|
|
|
|
{
|
|
|
|
|
$currencies = iterator_to_array($this->currencyRepository->getAllByCommunity($community));
|
|
|
|
|
usort($currencies, function($a, $b) {
|
|
|
|
|
return strnatcmp($a->getCode(), $b->getCode());
|
|
|
|
|
});
|
|
|
|
|
return $currencies;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function newCurrency(): ?IContent
|
|
|
|
|
{
|
|
|
|
|
if (!$this->checkPermission(\Container::$request->query('communityId'), true, $community, $ownCommunityMember)) {
|
|
|
|
@ -158,8 +176,7 @@ class CommunityController implements IAuthenticationRequired
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$code = \Container::$request->post('code');
|
|
|
|
|
$roundDigits = (int)\Container::$request->post('round_digits');
|
|
|
|
|
if (strlen($code) === 0 || strlen($code) > 3 || $roundDigits < 0 || $roundDigits > 9) {
|
|
|
|
|
if (strlen($code) === 0 || strlen($code) > 3) {
|
|
|
|
|
return new JsonContent([
|
|
|
|
|
'error' => ['errorText' => 'Please fill all required fields!']
|
|
|
|
|
]);
|
|
|
|
@ -175,7 +192,7 @@ class CommunityController implements IAuthenticationRequired
|
|
|
|
|
$currency = new Currency();
|
|
|
|
|
$currency->setCommunity($community);
|
|
|
|
|
$currency->setCode($code);
|
|
|
|
|
$currency->setRoundDigits($roundDigits);
|
|
|
|
|
$currency->setRoundDigits((int)\Container::$request->post('round_digits'));
|
|
|
|
|
\Container::$persistentDataManager->saveToDb($currency);
|
|
|
|
|
|
|
|
|
|
return new JsonContent(['success' => true]);
|
|
|
|
@ -251,24 +268,6 @@ class CommunityController implements IAuthenticationRequired
|
|
|
|
|
]);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private function getMembers(Community $community): array
|
|
|
|
|
{
|
|
|
|
|
$members = iterator_to_array($this->communityMemberRepository->getAllByCommunity($community, true));
|
|
|
|
|
usort($members, function($a, $b) {
|
|
|
|
|
return strnatcmp($a->getUser()->getDisplayName(), $b->getUser()->getDisplayName());
|
|
|
|
|
});
|
|
|
|
|
return $members;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private function getCurrencies(Community $community): array
|
|
|
|
|
{
|
|
|
|
|
$currencies = iterator_to_array($this->currencyRepository->getAllByCommunity($community));
|
|
|
|
|
usort($currencies, function($a, $b) {
|
|
|
|
|
return strnatcmp($a->getCode(), $b->getCode());
|
|
|
|
|
});
|
|
|
|
|
return $currencies;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private function checkPermission(
|
|
|
|
|
int $communityId,
|
|
|
|
|
bool $needToBeOwner,
|
|
|
|
|