gn36 / phpbb-ext-hookup Goto Github PK
View Code? Open in Web Editor NEWHookup-Extension for phpBB 3.1.x
License: GNU General Public License v2.0
Hookup-Extension for phpBB 3.1.x
License: GNU General Public License v2.0
It should be possible to disallow maybe entries on a "per topic" basis.
"Catchable fatal error: Argument 6 passed to gn36\hookup\cron\hookup_weekly_reset::__construct() must implement interface phpbb\event\dispatcher_interface, string given, called in /home/.sites/125/site129/web/rpg/cache/container_0374ec857381230fa83049643ce3cdee.php on line 1422 and defined in /home/.sites/125/site129/web/rpg/ext/gn36/hookup/cron/hookup_weekly_reset.php on line 49"
I received this fatal error everytime I added a group of forum members to a newly created hookup:
Fatal error: Uncaught exception 'Twig_Error_Loader' with message 'Unable to find template "@gn36_hookup/hookup_added.txt" (looked into: ).' in /opt/lampp/htdocs_intern/lanboard_31/vendor/twig/twig/lib/Twig/Loader/Filesystem.php:195 Stack trace: #0 /opt/lampp/htdocs_intern/lanboard_31/phpbb/template/twig/loader.php(107): Twig_Loader_Filesystem->findTemplate('@gn36_hookup/ho...') #1 /opt/lampp/htdocs_intern/lanboard_31/vendor/twig/twig/lib/Twig/Loader/Filesystem.php(138): phpbb\template\twig\loader->findTemplate('@gn36_hookup/ho...') #2 /opt/lampp/htdocs_intern/lanboard_31/vendor/twig/twig/lib/Twig/Environment.php(266): Twig_Loader_Filesystem->getCacheKey('@gn36_hookup/ho...') #3 /opt/lampp/htdocs_intern/lanboard_31/vendor/twig/twig/lib/Twig/Environment.php(324): Twig_Environment->getTemplateClass('@gn36_hookup/ho...', NULL) #4 /opt/lampp/htdocs_intern/lanboard_31/phpbb/template/twig/environment.php(166): Twig_Environment->loadTemplate('@gn36_hookup/ho...', NULL) #5 /opt/lampp/htdocs_intern/lanboard_31/vendor/twig/twig/lib/ in /opt/lampp/htdocs_intern/lanboard_31/vendor/twig/twig/lib/Twig/Loader/Filesystem.php on line 195
on first place, I thought, that it might be related to the 'add group' feature, since tests with adding single people succeeded always (with my random picked users).
But after some more structured tests, I found out, that the fail is caused by one user, who has set his User language to 'de_x_sie' (Formal german), wheras all other users have 'de' set as their language.
To verify this as the root cause, I cloned the hookup/language/de/ subfolder to hookup/language/de_x_sie/.
After doing so, the problem with the Fatal Error is gone.
It seems, that the language fallback for the notifications does not work...
Perhaps this is even a phpBB bug and not a problem of the hookup extension?!?
Invitation E-Mails from the hookup use user_ids instead of usernames in the mail text.
When you validate the date.
The notification mail is incomplete. No date in it (French translation):
"Bonjour ToF,
Vous recevez cette notification car vous participez à un événement planifié
dans le sujet « date de reunion XXXX » à « XXXXXXXXXXXXXXXXXXXXXX ».
La date de l’événement a été fixé au :
Pour consulter le sujet et l’événement associé, cliquez sur le lien
suivant :
http://www.XXXX.XX/phpbb/viewtopic.php?t=30
As you can see there is nothing after "La date de l’événement a été fixé au :"
Thx for your excellent work !!!
Before turning in the extension, the echo commands added to ext.php for testing purposes should be removed.
If weekly reset is activated, the users should be informed about that by adding a small image or text info to the hookup.
The JS Calendar is outdated and should be replaced either by HTML5 and a replacement script for incompatible browsers (preferred) or by a composer dependency providing a calendar widget that can be automatically kept up to date between versions.
See https://www.phpbb.de/community/viewtopic.php?f=149&t=233145&start=180#p1342240
The hookup should be capable of creating a calendar entry in phpBB calendars, once an active date is found. This requires only an event trigger in the hookup, but an event listener on the calendar side.
Obviously, this can be used for other calendar extensions as well.
Sorry I speak very little English :(
For "sum" there is a problem of calculation - rounding error - to total 101% = 2 lines for progress bar.
P.S. I prepare a translation in French.
Thank you for very good job ;)
It should be possible to enter dates only with a default time being added.
Potentially, this should even be stored and the entries should also be displayed without time in that case.
The default time should be configurable in the first post of the topic, a global default time should be set in the config table.
The active date is not updated, when weekly resets are active. It is also unclear, what date should actually be active.
Minimal solution: Remove activedate setting when active date is rolled out.
Advanced solution: Determine a new activedate when old one is rolled out.
https://www.phpbb.de/community/viewtopic.php?f=145&t=238242&p=1359407#p1359407
Wrong access to hookup.css (typo in path, access using app.php) causes viewonline to record hookup.css (with full path) as page viewed.
A reminder button, that can be used to send notifications to all participants, who did not yet enter themselves, or possibly also another reminder to update the data entered.
an ics Feed that provides yes/no/maybe information and the active date once it is set would be nice.
This requires a suitable ics php library.
Ensure the cronjob can be watched using BoardTools/cronstatus:
https://github.com/BoardTools/cronstatus
Configuration:
https://www.phpbb.com/customise/db/extension/cronstatus/faq/1746
For some occasions it might be nice to get a reminder a few days before the fixed date.
It should be possible to disallow regular users to add new dates. This can either be a new forum permission or also be set on a per topic level.
When I want to add a single user or a group of users to a hookup, I get a error message:
The user xxx doesn’t have the permission to read this forum (USER_CANNOT_READ_FORUM)
This happens, but all the users actually have appropriate rights, to read and write in the forum.
Taking a look into the code, I found, that there is a second condition, that is checked, which leads to the 'USER_CANNOT_READ_FORUM' error message:
phpbb-ext-hookup/event/viewtopic.php (lines 629-633):
if (!$user_auth->acl_get('f_read', $event['forum_id']) || !$user_auth->acl_get('f_hookup', $event['forum_id']))
{
$hookup_errors[] = sprintf($this->user->lang['USER_CANNOT_READ_FORUM'], $new_users[$user_id]['username']);
unset($userids_to_add[$key]);
}
I think, the second part in the if() shouldn't be there, since the ACL rule should manage (at least from my understanding and from the explanation in permissions_hookup.php), if someone is allowed to create a new hookup. But here it's only about adding a user to be able to vote.
When two topics with a hookup are merged, the hookup should also be merged.
Explanations are needed for the following things (translations as well):
When you receive a email notification from the extension after adding a new date, a point is automaticaly added to the URL.
exemple
http://mysite.com/phpbb./viewtopic.php?t=30
as you can see, there is a point after phpbb
Thx for your greet work !!!!
Hello
when I (Frank) add dates to the survey it sends an email to every user which is part of it. Unfortunatly, the mail to the user "Hannes" starts with "Hallo Frank" instead wiht "Hallo Hannes". I can't find any difference in the .txt-files so I'm kind of lost where to look for it.
Thanks for that great extension nonetheless!
best regards,
Frank
After enabling and confirming that I do have permissions to a specific forum to add hookup events, I do not see any buttons or options to actually add or create the event. Am I missing something else?
It might be nice for some applications to allow users to hide the result from everyone but the owner of the topic and moderators with a special permission. This means that everyone can only see his own settings. Potentially, one would also wish to hide the names of other users.
Hello,
I shall have some rectifications to be made in the translation in French.
I am seeing some details with the French-speaking community.
We discovered a problem in the files of the template. It is going to need to replace ":" by "{L_COLON}".
Want you that I take care of it ?
Maybe it is possible to check extension translations with the phpbb-translation-validator as well:
https://github.com/phpbb/phpbb-translation-validator
composer.json
{
"require-dev": {
"phpbb/translation-validator": "1.3.*"
}
}
Call: php vendor/bin/PhpbbTranslationValidator.php
Should be first tested in new branch.
The weekly reset should generate notifications about new dates. This should be a different type of notification.
Date format should use board default or be configurable. I.e. December 4, 2015 should look like 12.04.2015 for us Yanks instead of 04.12.2015 .
An option to export the table to CSV should be added or the hookup should appear in the topic printout.
Email notifications should be active by default on installation and for new users.
Instead of using the same permission for using and creating hookups, those two permissions should be split up into f_hookup and f_hookup_create.
Notifications need an update to contain the active date. Currently they contain the date 0 if a text option is selected. Also, Text options may not be active dates, so the "active date" text should be set to "Active" instead.
When a large number of dates is listed in a hookup, a nasty full-forum horizontal scrollbar is used and the list extends beyond the side of the board.
The french translation is missing a few new things.
@MetallicaMust Could you adjust the french translation so it matches the new version? I have changed a few things and there are new translation files that are missing in the french version. My french is not good enough to do this myself.
Instead of only permitting date and time for entries, it should also be possible to enter arbitrary text so that more customized questions can be adressed, similar to a poll where multiple options can be selected.
This was also possible using a modification by miriam to the original phpBB 3 Mod. However the zip archive containing the changes is no longer available. It would be nice to make this compatible to the old variant to allow upgrades.
Possibly someone can provide the complete zip archive?
Related: http://pastebin.com/NB3zHJ42
This is an idea that comes from the old phpBB 2 Mod, which permitted the entry of arbitrary names including their [yes/no/maybe] setting. This allows moderators or list-owners to enter information they received from other sources back into this list. For example it could be used to add customers information to the list to find a meeting, it could be used by coaches with "forum-resilient" players to collect their information in one single place, ...
Potentially, the combination of date and text options could be useful. Entry would simply be:
DD-MM-YYYY # text for description
This can be useful to explain dates while still retaining full calendar compatibility. Also, it could be used in combination with weekly resets, retaining the text with every date, e.g. "Oct. 25th, Training at A, Oct. 27th, Training at B" which will be updated to "Nov. 1st, Training at A, Nov. 3rd, Training at B" for the following week.
Hello,
I would like to subject(submit) you a detail by the fact that it has an importance for the French translation.
It is about the links "Set active" at the bottom of columns.
ref : https://github.com/gn36/phpbb-ext-hookup/blob/master/styles/prosilver/template/viewtopic_hookup.html#L139
In view of the importance of the irreversible action(share) which it engenders, would not it be better to replace this link by a button ?
(translate French/English by http://www.reverso.net)
Thank you
When the number of entries exceeds a certain limit, the list should be automatically collapsed. Potentially, a different collapse should be chosen, collapsing all entries except for the settings for the current user if he is part of the list and the summed totals.
This goes in conjunction with #5 but expands it greatly. One might wish to limit the number of yes/no/maybe replies of all users.
The most typical would probably be to allow only one yes or a limited number of no entries to force users to pick exactly one date or exclude only a certain number of dates of the selectable number of dates.
Hi,
In en/hookup.php
you must use ’
instead of \'
.
And after apply this change, don't forget to convert your file in UTF-8 w/BOM
Lines affected :
https://github.com/gn36/phpbb-ext-hookup/blob/master/language/en/hookup.php#L71
https://github.com/gn36/phpbb-ext-hookup/blob/master/language/en/hookup.php#L96
https://github.com/gn36/phpbb-ext-hookup/blob/master/language/en/hookup.php#L110
You can find some special chars in header of any files of phpBB English language pack.
See https://travis-ci.org/gn36/phpbb-ext-hookup/builds/103772683
Apparently, the cronjob validation fails on certain php versions.
It should be possible to edit Date entries after creation. This is mostly useful for Text entries (e.g. to add additional information or to clarify)
Instead of sending out emails, the extension should build upon the new notification system to let the user decide how he wants to receive infos.
Functional test cases fail upon installation step precheck routine (cannot find submit button after calling install page
adm/index.php?i=acp_extensions&mode=main&action=enable_pre&ext_name=...
php 5.3.3 errors due to ssl problems -> insert workaround.
This only makes sense together with "allow self-invite". For some events, the number of registrants may be limited. If the number of users that can self-invite is limited, the button can disappear after that number of users have entered themselves.
A dashboard that summarizes all events of the week (aggregate from topics) and allows yes / no / maybe votes.
This is more of a long-term idea with a lot of work involved but also containing probably a lot of useful features if the hookup is mainly used for finding participants for fixed event dates.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.