• Added new payment service 2Checkout (Verifon). You can pay by American Express, JCB, PayPal, Discover, Visa, MasterCard.
[DCom] Joint Purchases

[DCom] Joint Purchases [Paid] 3.1.5

No permission to buy ($50.00)
Да, я помню. Сейчас только найду причину, почему у тебя она показывается, хотя причина в том, что не ставится отметка об оплате, сейчас с эти разбираюсь.
 
@МММ нашёл ошибку, сейчас поправлю. Если включить разделение платежа, то работает.
 
@МММ нашёл ошибку, сейчас поправлю. Если включить разделение платежа, то работает.
ещё кое что обнаружил, когда включаешь данную функцию Запретить организатору редактировать покупку после перехода на этап оплаты, организатор и даже администратор не может не чего делать со списком участников, он выглядит как у обычного пользователя.
 
Так редактирование покупки и подразумевает также изменение списка её участников и статусов оплаты и прочего. А про администратора, проверь права групп у группы администраторы.
 
Так редактирование покупки и подразумевает также изменение списка её участников и статусов оплаты и прочего. А про администратора, проверь права групп у группы администраторы.
Я просто думал речь идёт о редактирование цены изменение количества участников и т.п, просто если кого-то нужно удалить из складчины или добавить уже без админа не обойтись будет
 
Ты можешь создать отдельную группу "смотрящих" )) за складчинами и выдать им права на редактирование. Это как раз было введено для проектов, где организаторы могут пропасть)))

Т.е. когда орги это любой человек на форуме, то лучше после начала оплаты не давать возможность манипулировать списком оплативших
 
Также были замечаны вот такие ерроры, при входе и последующим выходе из складчины, складчина давно была создана.
На чистой установке возникают, чтобы я понимал, от чего отталкиваться?
 
На чистой установке возникают, чтобы я понимал, от чего отталкиваться?
нет, это было не на чистой, а на рабочем форуме, там были созданы складчины до версии 3.1
 
нет, это было не на чистой, а на рабочем форуме, там были созданы складчины до версии 3.1
Понял. Буду тогда смотреть эту сторону.
 
Понял. Буду тогда смотреть эту сторону.
а вот и нет, я вру, точней ошибка и на чистой xf появилась, всё тоже самое

Code:
#0 src/XF/Mvc/Entity/Entity.php(125): XF\Mvc\Entity\Entity->get('question_soluti...')
#1 internal_data/code_cache/templates/l2/s1/public/dcom_jp_member_list_macros.php(49): XF\Mvc\Entity\Entity->offsetGet('question_soluti...')
#2 src/XF/Template/Templater.php(827): XF\Template\Templater->{closure}(Object(DCom\JointPurchases\XF\Template\Templater), Array, NULL)
#3 internal_data/code_cache/templates/l2/s1/public/dcom_jp_part_list.php(157): XF\Template\Templater->callMacro('dcom_jp_member_...', 'item', Array, Array)
#4 src/XF/Template/Templater.php(1654): XF\Template\Templater->{closure}(Object(DCom\JointPurchases\XF\Template\Templater), Array, NULL)
#5 src/XF/Template/Template.php(24): XF\Template\Templater->renderTemplate('dcom_jp_part_li...', Array)
#6 src/XF/Mvc/Renderer/Json.php(86): XF\Template\Template->render()
#7 src/XF/Mvc/Renderer/Json.php(70): XF\Mvc\Renderer\Json->renderHtmlFallback('DCom\\JointPurch...', 'public:dcom_jp_...', Array)
#8 src/XF/Mvc/Dispatcher.php(460): XF\Mvc\Renderer\Json->renderView('DCom\\JointPurch...', 'public:dcom_jp_...', Array)
#9 src/XF/Mvc/Dispatcher.php(442): XF\Mvc\Dispatcher->renderView(Object(XF\Mvc\Renderer\Json), Object(XF\Mvc\Reply\View))
#10 src/XF/Mvc/Dispatcher.php(402): XF\Mvc\Dispatcher->renderReply(Object(XF\Mvc\Renderer\Json), Object(XF\Mvc\Reply\View))
#11 src/XF/Mvc/Dispatcher.php(60): XF\Mvc\Dispatcher->render(Object(XF\Mvc\Reply\View), 'json')
#12 src/XF/App.php(2487): XF\Mvc\Dispatcher->run()
#13 src/XF.php(524): XF\App->run()
#14 index.php(20): XF::runApp('XF\\Pub\\App')
#15 {main}

array(4) {
  ["url"] => string(165) "/threads/kasper.7/purchases/partlist?_xfRequestUri=%2Fthreads%2Fkasper.7%2F&_xfWithData=1&_xfToken=1710016787%2C03a9dfb2896f35ef6a03a2dc8149e0f0&_xfResponseType=json"
  ["referrer"] => string(40) "https://guard.ru/threads/kasper.7/"
  ["_GET"] => array(5) {
    ["/threads/kasper_7/purchases/partlist"] => string(0) ""
    ["_xfRequestUri"] => string(18) "/threads/kasper.7/"
    ["_xfWithData"] => string(1) "1"
    ["_xfToken"] => string(43) "1710016787,03a9dfb2896f35ef6a03a2dc8149e0f0"
    ["_xfResponseType"] => string(4) "json"
  }
  ["_POST"] => array(0) {
  }
}
 
Понял. Буду тогда смотреть эту сторону.
Если есть возможность сразу получать обновления для дальнейшего тестирования будет здорово, в личку или ещё кто-то, просто сейчас ждём фиксов и чтобы не терять ваше время.
 
Если есть возможность сразу получать обновления для дальнейшего тестирования будет здорово, в личку или ещё кто-то, просто сейчас ждём фиксов и чтобы не терять ваше время.
Привет. Нашёл ошибку ту. Исправил. В течении час выложу релиз.
 
Есть ещё одна ошибка, если перевести складчину с этапа оплаты на этап набор участников и после попробовать уволить организатора получаешь вот такую ошибку, это прям в окне форума.

Code:
LogicException: Attempted to set 'stage' while a save was pending without forceSet in src/XF/Mvc/Entity/Entity.php at line 605
[LIST=1]
[*]XF\Mvc\Entity\Entity->set() in src/XF/Mvc/Entity/Entity.php at line 577
[*]XF\Mvc\Entity\Entity->__set() in src/addons/DCom/JointPurchases/Entity/JointPurchases.php at line 694
[*]DCom\JointPurchases\Entity\JointPurchases->_postSave() in src/XF/Mvc/Entity/Entity.php at line 1277
[*]XF\Mvc\Entity\Entity->save() in src/addons/DCom/JointPurchases/Service/JointPurchases/Editor.php at line 99
[*]DCom\JointPurchases\Service\JointPurchases\Editor->_save() in src/XF/Service/ValidateAndSavableTrait.php at line 42
[*]DCom\JointPurchases\Service\JointPurchases\Editor->save() in src/addons/DCom/JointPurchases/ControllerPlugin/JointPurchases.php at line 675
[*]DCom\JointPurchases\ControllerPlugin\JointPurchases->actionOrgan() in src/addons/DCom/JointPurchases/XF/Pub/Controller/Thread.php at line 113
[*]DCom\JointPurchases\XF\Pub\Controller\Thread->actionPurchasesOrgan() in src/XF/Mvc/Dispatcher.php at line 352
[*]XF\Mvc\Dispatcher->dispatchClass() in src/XF/Mvc/Dispatcher.php at line 259
[*]XF\Mvc\Dispatcher->dispatchFromMatch() in src/XF/Mvc/Dispatcher.php at line 115
[*]XF\Mvc\Dispatcher->dispatchLoop() in src/XF/Mvc/Dispatcher.php at line 57
[*]XF\Mvc\Dispatcher->run() in src/XF/App.php at line 2487
[*]XF\App->run() in src/XF.php at line 524
[*]XF::runApp() in index.php at line 20
[/LIST]

В админке так

Code:
[HEADING=2]Трассировка стека[/HEADING]
#0 src/XF/Mvc/Entity/Entity.php(577): XF\Mvc\Entity\Entity->set('stage', 'payment')
#1 src/addons/DCom/JointPurchases/Entity/JointPurchases.php(694): XF\Mvc\Entity\Entity->__set('stage', 'payment')
#2 src/XF/Mvc/Entity/Entity.php(1277): DCom\JointPurchases\Entity\JointPurchases->_postSave()
#3 src/addons/DCom/JointPurchases/Service/JointPurchases/Editor.php(99): XF\Mvc\Entity\Entity->save()
#4 src/XF/Service/ValidateAndSavableTrait.php(42): DCom\JointPurchases\Service\JointPurchases\Editor->_save()
#5 src/addons/DCom/JointPurchases/ControllerPlugin/JointPurchases.php(675): DCom\JointPurchases\Service\JointPurchases\Editor->save()
#6 src/addons/DCom/JointPurchases/XF/Pub/Controller/Thread.php(113): DCom\JointPurchases\ControllerPlugin\JointPurchases->actionOrgan(Object(DCom\JointPurchases\Entity\JointPurchases), Array)
#7 src/XF/Mvc/Dispatcher.php(352): DCom\JointPurchases\XF\Pub\Controller\Thread->actionPurchasesOrgan(Object(XF\Mvc\ParameterBag))
#8 src/XF/Mvc/Dispatcher.php(259): XF\Mvc\Dispatcher->dispatchClass('XF:Thread', 'PurchasesOrgan', Object(XF\Mvc\RouteMatch), Object(DCom\JointPurchases\XF\Pub\Controller\Thread), NULL)
#9 src/XF/Mvc/Dispatcher.php(115): XF\Mvc\Dispatcher->dispatchFromMatch(Object(XF\Mvc\RouteMatch), Object(DCom\JointPurchases\XF\Pub\Controller\Thread), NULL)
#10 src/XF/Mvc/Dispatcher.php(57): XF\Mvc\Dispatcher->dispatchLoop(Object(XF\Mvc\RouteMatch))
#11 src/XF/App.php(2487): XF\Mvc\Dispatcher->run()
#12 src/XF.php(524): XF\App->run()
#13 index.php(20): XF::runApp('XF\\Pub\\App')
#14 {main}
[HEADING=2]Содержимое запроса[/HEADING]
array(4) {
  ["url"] => string(31) "/threads/test.3/purchases/organ"
  ["referrer"] => string(38) "https://guard.ru/threads/test.3/"
  ["_GET"] => array(1) {
    ["/threads/test_3/purchases/organ"] => string(0) ""
  }
  ["_POST"] => array(5) {
    ["_xfToken"] => string(8) "********"
    ["simple_display"] => string(0) ""
    ["_xfRequestUri"] => string(16) "/threads/test.3/"
    ["_xfWithData"] => string(1) "1"
    ["_xfResponseType"] => string(4) "json"
  }
}
 
DimmmCom обновил ресурс [DCom] Joint Purchases новой записью:

3.0.7

Bug fixes

Посмотреть подробности об этом обновлении...

Огромная благодарность @МММ за помощь в нахождении ошибок.
 
При объявлении сбора взноса, а иногда при записи участника в список выдает ошибку
Code:
XF\Db\Exception: MySQL query error [1364]: Field 'purchase_type' doesn't have a default value src/XF/Db/AbstractStatement.php:230

Трассировка стека
INSERT  INTO `xf_conversation_master` (`user_id`, `username`, `open_invite`, `conversation_open`, `dcom_jp_purchase_id`, `dcom_jp_purchase_type`, `title`, `start_date`, `last_message_date`, `last_message_user_id`, `last_message_username`, `conversation_id`, `reply_count`, `recipient_count`, `first_message_id`, `last_message_id`, `recipients`) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
------------

#0 src/XF/Db/Mysqli/Statement.php(198): XF\Db\AbstractStatement->getException('MySQL query err...', 1364, 'HY000')
#1 src/XF/Db/Mysqli/Statement.php(79): XF\Db\Mysqli\Statement->getException('MySQL query err...', 1364, 'HY000')
#2 src/XF/Db/AbstractAdapter.php(96): XF\Db\Mysqli\Statement->execute()
#3 src/XF/Db/AbstractAdapter.php(220): XF\Db\AbstractAdapter->query('INSERT  INTO `x...', Array)
#4 src/XF/Mvc/Entity/Entity.php(1526): XF\Db\AbstractAdapter->insert('xf_conversation...', Array, false)
#5 src/XF/Mvc/Entity/Entity.php(1258): XF\Mvc\Entity\Entity->_saveToSource()
#6 src/XF/Service/Conversation/Creator.php(227): XF\Mvc\Entity\Entity->save(true, false)
#7 src/XF/Service/ValidateAndSavableTrait.php(42): XF\Service\Conversation\Creator->_save()
#8 src/addons/DCom/JointPurchases/Repository/JointPurchases.php(167): XF\Service\Conversation\Creator->save()
#9 src/addons/DCom/JointPurchases/Entity/JointPurchases.php(706): DCom\JointPurchases\Repository\JointPurchases->sendProps(Object(DCom\JointPurchases\Entity\JointPurchases))
#10 src/XF/Mvc/Entity/Entity.php(1282): DCom\JointPurchases\Entity\JointPurchases->_postSave()
#11 src/addons/DCom/JointPurchases/Entity/ParticipantsPurchases.php(87): XF\Mvc\Entity\Entity->save()
#12 src/XF/Mvc/Entity/Entity.php(1282): DCom\JointPurchases\Entity\ParticipantsPurchases->_postSave()
#13 src/addons/DCom/JointPurchases/Service/JointPurchases/AddUser.php(102): XF\Mvc\Entity\Entity->save()
#14 src/XF/Service/ValidateAndSavableTrait.php(42): DCom\JointPurchases\Service\JointPurchases\AddUser->_save()
#15 src/addons/DCom/JointPurchases/ControllerPlugin/JointPurchases.php(543): DCom\JointPurchases\Service\JointPurchases\AddUser->save()
#16 src/addons/DCom/JointPurchases/XF/Pub/Controller/Thread.php(77): DCom\JointPurchases\ControllerPlugin\JointPurchases->actionAdduser(Object(DCom\JointPurchases\Entity\JointPurchases), Array)
#17 src/XF/Mvc/Dispatcher.php(352): DCom\JointPurchases\XF\Pub\Controller\Thread->actionPurchasesAdduser(Object(XF\Mvc\ParameterBag))
#18 src/XF/Mvc/Dispatcher.php(259): XF\Mvc\Dispatcher->dispatchClass('XF:Thread', 'PurchasesAdduse...', Object(XF\Mvc\RouteMatch), Object(XenSoluce\SEOOptimization\XF\Pub\Controller\Thread), NULL)
#19 src/XF/Mvc/Dispatcher.php(115): XF\Mvc\Dispatcher->dispatchFromMatch(Object(XF\Mvc\RouteMatch), Object(XenSoluce\SEOOptimization\XF\Pub\Controller\Thread), NULL)
#20 src/XF/Mvc/Dispatcher.php(57): XF\Mvc\Dispatcher->dispatchLoop(Object(XF\Mvc\RouteMatch))
#21 src/XF/App.php(2487): XF\Mvc\Dispatcher->run()
#22 src/XF.php(524): XF\App->run()
#23 index.php(20): XF::runApp('XF\\Pub\\App')
#24 {main}
 
При объявлении сбора взноса, а иногда при записи участника в список выдает ошибку
Code:
XF\Db\Exception: MySQL query error [1364]: Field 'purchase_type' doesn't have a default value src/XF/Db/AbstractStatement.php:230

Трассировка стека
INSERT  INTO `xf_conversation_master` (`user_id`, `username`, `open_invite`, `conversation_open`, `dcom_jp_purchase_id`, `dcom_jp_purchase_type`, `title`, `start_date`, `last_message_date`, `last_message_user_id`, `last_message_username`, `conversation_id`, `reply_count`, `recipient_count`, `first_message_id`, `last_message_id`, `recipients`) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
------------

#0 src/XF/Db/Mysqli/Statement.php(198): XF\Db\AbstractStatement->getException('MySQL query err...', 1364, 'HY000')
#1 src/XF/Db/Mysqli/Statement.php(79): XF\Db\Mysqli\Statement->getException('MySQL query err...', 1364, 'HY000')
#2 src/XF/Db/AbstractAdapter.php(96): XF\Db\Mysqli\Statement->execute()
#3 src/XF/Db/AbstractAdapter.php(220): XF\Db\AbstractAdapter->query('INSERT  INTO `x...', Array)
#4 src/XF/Mvc/Entity/Entity.php(1526): XF\Db\AbstractAdapter->insert('xf_conversation...', Array, false)
#5 src/XF/Mvc/Entity/Entity.php(1258): XF\Mvc\Entity\Entity->_saveToSource()
#6 src/XF/Service/Conversation/Creator.php(227): XF\Mvc\Entity\Entity->save(true, false)
#7 src/XF/Service/ValidateAndSavableTrait.php(42): XF\Service\Conversation\Creator->_save()
#8 src/addons/DCom/JointPurchases/Repository/JointPurchases.php(167): XF\Service\Conversation\Creator->save()
#9 src/addons/DCom/JointPurchases/Entity/JointPurchases.php(706): DCom\JointPurchases\Repository\JointPurchases->sendProps(Object(DCom\JointPurchases\Entity\JointPurchases))
#10 src/XF/Mvc/Entity/Entity.php(1282): DCom\JointPurchases\Entity\JointPurchases->_postSave()
#11 src/addons/DCom/JointPurchases/Entity/ParticipantsPurchases.php(87): XF\Mvc\Entity\Entity->save()
#12 src/XF/Mvc/Entity/Entity.php(1282): DCom\JointPurchases\Entity\ParticipantsPurchases->_postSave()
#13 src/addons/DCom/JointPurchases/Service/JointPurchases/AddUser.php(102): XF\Mvc\Entity\Entity->save()
#14 src/XF/Service/ValidateAndSavableTrait.php(42): DCom\JointPurchases\Service\JointPurchases\AddUser->_save()
#15 src/addons/DCom/JointPurchases/ControllerPlugin/JointPurchases.php(543): DCom\JointPurchases\Service\JointPurchases\AddUser->save()
#16 src/addons/DCom/JointPurchases/XF/Pub/Controller/Thread.php(77): DCom\JointPurchases\ControllerPlugin\JointPurchases->actionAdduser(Object(DCom\JointPurchases\Entity\JointPurchases), Array)
#17 src/XF/Mvc/Dispatcher.php(352): DCom\JointPurchases\XF\Pub\Controller\Thread->actionPurchasesAdduser(Object(XF\Mvc\ParameterBag))
#18 src/XF/Mvc/Dispatcher.php(259): XF\Mvc\Dispatcher->dispatchClass('XF:Thread', 'PurchasesAdduse...', Object(XF\Mvc\RouteMatch), Object(XenSoluce\SEOOptimization\XF\Pub\Controller\Thread), NULL)
#19 src/XF/Mvc/Dispatcher.php(115): XF\Mvc\Dispatcher->dispatchFromMatch(Object(XF\Mvc\RouteMatch), Object(XenSoluce\SEOOptimization\XF\Pub\Controller\Thread), NULL)
#20 src/XF/Mvc/Dispatcher.php(57): XF\Mvc\Dispatcher->dispatchLoop(Object(XF\Mvc\RouteMatch))
#21 src/XF/App.php(2487): XF\Mvc\Dispatcher->run()
#22 src/XF.php(524): XF\App->run()
#23 index.php(20): XF::runApp('XF\\Pub\\App')
#24 {main}

Я не вижу на форуме, к которому привязана лицензия, складчин способных вызвать такое поведение.
Но вижу человека, который хочет побить рекорд по времени между приобретением лицензии и её потерей.
Данная ошибка может возникнуть только на версиях до 2.0.0 и была давно исправлена.
Поэтому странно получать сообщение о ошибке от человека, который скачал только версию 3.0.7 не имеющую данного бага.
🧐🧐🧐🧐
 
Не разобрался как перевести кредиты со своего счета (DragonByte Credits) организатору складчины в качестве оплаты взноса
 
Не разобрался как перевести кредиты со своего счета (DragonByte Credits) организатору складчины в качестве оплаты взноса
Создать платёжный профиль кредитов admin.php?payment-profiles/
Это позволит пользователям оплачивать покупки кредитами.
Если необходимо, чтобы и организатор также получил кредиты после того как пользователь оплатит, то в настройках разрешить перевод кредитов организатору.
Screenshot 2024-03-22 at 09-31-09 DCom Совместные покупки Development environment (license for...png
 
Back
Top