gadgetto / goodnews Goto Github PK
View Code? Open in Web Editor NEWAn integrated group and newsletter mailing system for MODX Revolution CMF
License: GNU General Public License v2.0
An integrated group and newsletter mailing system for MODX Revolution CMF
License: GNU General Public License v2.0
Output a warning message in subscription, update subscription, unsubscription forms if GoodNews Snippet mis-configured (eg. using GoodNews group or categories IDs which doesn't exist).
Probably other additional params needed too...
(currently the email params are read from MODX system settings)
/core/components/goodnews/model/goodnews/goodnewsprocesshandler.class.php : 407) PHP warning: Invalid argument supplied for foreach()
Since glob() may not reliably return an empty array for an empty match we need to check if is_array first:
$files = glob($tmpFolder . $fileTypes);
if (is_array($files) && count($files) > 0) {
foreach($files as $Filename) {
...
Add bulk editing to Subscribers grid.
This should only happen when output contains groups AND categories. In this case each group/categories block is rendered inside a html form fieldset.
If the output contains only groups, the whole set of groups should be rendered inside a html form fieldset.
All other MODX users without GoodNews subscriptions will be listed by selecting "No group assigned" in the "Filter by Group..." drop down.
The "Editor-Level" user should be enabled to create/edit newsletters and also test-send them.
A "Higher-Level" user should then be enabled to finally send the newsletter.
cron.worker.php throws PHP warning: Invalid argument supplied for foreach() to MODX error log.
function _removeLockFile in goodnewsprocesshandler.class.php needs to be extended with a cleanup process to safely remove all lock files if process handler crashes (this could happen if the cron.worker.php was killed by server due to a script timeout).
Currently the editor mode depends on the mode of the parent container (which is a MODX feature)
If a mailing process stops unexpectedly or finishes successfully GoodNews sends a status email to the administrator or editor which initially started the mailing.
PHP process could reach/exceed memory limit when sending to huge lists of subscribers. Current workaround: increase PHP memory_limit to 128MB.
Request secure links to update or chancel a subscription (additional method to authenticate via email).
$this->modx->mail->set(modMail::MAIL_FROM, $this->modx->getOption('emailsender'));
$this->modx->mail->set(modMail::MAIL_FROM_NAME, $this->modx->getOption('site_name'));
$this->modx->mail->set(modMail::MAIL_SENDER, $this->modx->getOption('emailsender'));
/core/components/goodnews/model/goodnews/goodnewssubscription.class.php
For example:
Send out an email after publishing a MODX resource. The email itself should contain a derivative of the just published resource. (requested by Wim Hauben)
(The automatic sending could be established by copying the MODX resource and create an GoodNews resource with scheduled send date)
Missing pagination for larger lists.
Adding french lexicon strings.
&placeholderPrefix=upd
or &placeholderPrefix=upd.
Backwards compatibility!
User importer: PHP versions prior 5.3.0 don't support the escape param.
The CSS inliner also requires PHP > 5.3.
Resizing problem with grids in tab panels.
Missing processor paths. Some context menu actions in Mailings grid not working. Some action buttons in Mailing/Container (Resource) editor. Visual enhancements.
Closing a Newsletter document triggers the pending changes dialogue although the document is already saved!
GoodNews currently also prefixes internal links, which breaks them.
Add feature to manually disable multiprocessing (currently multiprocessing is always enabled except server environment doesn't support php exec).
Automatically fetch resource-parts (e.g. title, short-text, ...) from Resource containers - like Articles, Collections, Grid Class Key and insert into defined newsletter areas via placeholder.
We need a dummy user from which the profile fields are filled in.
Auto-detects every img element in html body of mailing and convert physical image dimensions to values base on src or style attributes.
Will require pThumb add-on!
Feature to export Subscribers to .csv (based on Groups and/or Category filters)
When creating/editing a mailing and trying to select only one category of a subscribers group, the full group will also be selected.
Worker script (cron.php) may only be executed if a security key is provided by cron. Deactivation of this feature doesn't work.
If the email field is empty and the subscriber hits the submit button, the page reloads an the snippet seems to crash as no validation error is shown and no groups/categories are outputted.
Other email validations are working (missing domain, invalid email, ...)
Option to disable Mailing Templates Category filtering in Mailing Container settings.
If existing MODX users don't already have Subscriber meta data assigned those meta data is not created properly by update-importer.
Got this one today:
Fatal error: Undefined class constant 'LOG_LEVEL_WANR' in /home/kfb/public_html/core/components/goodnews/model/goodnews/goodnewssubscriptioncontroller.class.php on line 703
Turn out there is a typo on that line:
$this->modx->log(modX::LOG_LEVEL_WANR, '[GoodNews] GoodNewsSubscription - snippet parameter profileResourceId not set.');
I guess this should be:
$this->modx->log(modX::LOG_LEVEL_WARN, '[GoodNews] GoodNewsSubscription - snippet parameter profileResourceId not set.');
instead.
Updating of existing subscribers -> assign additional Groups/Categories + automatically create new Groups/Categories via Importer.
I think it would be best to extend the existing group filter to display a groups/categories tree!
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.