technical challenges
play

Technical Challenges Bruce Scherzinger Northern Virginia JUG - PowerPoint PPT Presentation

A Few Choice Technical Challenges Bruce Scherzinger Northern Virginia JUG Co-Founder and Chair Professional Aerospace Software Systems Engineer First presented July 20, 2017 Agenda Investigating and fixing a template problem


  1. A Few Choice Technical Challenges Bruce Scherzinger Northern Virginia JUG Co-Founder and Chair Professional Aerospace Software Systems Engineer First presented July 20, 2017

  2. Agenda  Investigating and fixing a template problem  Integrating Dada Mail with Joomla  Using Jaspersoft iReport to print a member directory Note: This presentation is designed for parallel demonstration using a live Joomla website.

  3. JoomlART Purity III / T3 Platform Template Problem Investigation

  4. JoomlART Purity III Template  Template: JoomlArt’s Purity III (v1.2.0)  Requires T3 framework (v2.6.5)  Joomla: v3.7  Issue: Front end article editing not possible  Diagnostic tools used:  Chrome browser element inspector  Joomla site debug mode  Patience and persistence

  5. Template Symptoms  Editing an article in site front end, no editor toolbar or buttons present, no page styling at all.  No way to cancel the edit, so article remained locked until unlocked in back end editor, which was working.  Using Chrome’s inspector, template code was simply not there. Page was stark in content. Article HTML (content) did load into editor text box.  At first it appeared to be an editor or ACL problem, but it occurred regardless which editor was used.

  6. Finding the Error  Using Chrome, right-click page, Inspect Element.  Usual <head> tag was empty. Immediately apparent, template was not being loaded.  Set site error level to Development. Reloaded page.  PHP error reported identified an illegal object reference in a file in the t3-assets templates subfolder.  Found additional similar references in the same area of the file.

  7. Debugging Symptoms  Front-end editing an article  Using Google Chrome’s element inspector, you can see there’s very little HTML on this page.  It is clear the template code did not load.

  8. Debugging Symptoms  Using Development level error reporting and reopening the editor in the front end caused this error to be reported: Fatal error: Cannot use object of type ContentViewForm as array in /home/userid/public_html/mydomain.co m/plugins/system/t3/base- bs3/html/layouts/joomla/edit/params.php on line 13

  9. The Devil is in the Details Lines 13-15 are using the $displaydata object as an array. Searching for another params.php file in the t3 folders that might hold a clue.

  10. Workaround/Temporary Fix  Found same-named file in another t3 folder and found different code there.  Copied the lines of code used in the presumably correct code to replace the errant code.  PROBLEM SOLVED!

  11. Applying the Workaround  Found similar code in the file plugins/system/t3/ base /html/layouts/joomla/edit/params.php that did not use $displaydata as an array.  Copied the base-bs3 code to the base params.php file for the fix. t3/ base-bs3 / file t3/ base / file

  12. Voila!  This is how the editor is supposed to look! (looks like I need to work on that Captcha box alignment)

  13. Follow-up  Reported issue to JoomlArt via their user support forum using the same screen clips used here.  Checked with others using the Purity III template on a fresh Joomla 3.7 installation. Symptoms not present.  So…How Did This Happen? Some ideas…  Template update process did not replace the errant file.  JA style management maintains many copies of similar files. Perhaps I stumbled onto one that didn’t update; one that was generated from my customizations.

  14. Purity III Template Links  Note: Accessing some links may require a user account.  Forum post/discussion of my report of the issue  https://www.joomlart.com/forums/topic/bug-found-in-t3-2- 6-5  Purity III Template Download  https://www.joomlart.com/downloads/free- templates/purity-iii/  JoomlART Free Templates  https://www.joomlart.com/downloads/

  15. Website Member-based Community Email Lists by Integrating Dada Mail with Joomla

  16. Integrating Dada Mail with Joomla  Does your community site need an email list?  Are you tired of paying for a third party service?  Is PHP-based mailing not cutting it for you?  Do you want your site login to provide access?  YOU NEED AN INTEGRATED SOLUTION!  Dada Mail may be the answer.

  17. Dada Mail  A Perl script written by Justin Simoni.  Over a decade of development and support.  Free to use, support requires a subscription.  Free version supports up to 3 lists.  Has its own web interface, mainly for administration.  Uses any email account with POP3/SMTP access.  Not dependent on Joomla site server being up and running.  Uses text files or MySQL for data management.  MySQL option allows integrating with Joomla.  Cronjob runs script at scheduled interval.  No site activity required. Site can be in maintenance mode.  Dada Bridge plug-in allows members to use their favorite email client or service.

  18. Dada Mail Subscriptions CB Plugin  I developed the Dada Mail Subscriptions CB plugin for my HOA community website in 2006. Still in use.  Need arose when neighbors couldn’t keep website and Mailman logins straight. Demanded integrated solution.  Allows site members to click checkboxes to subscribe to and unsubscribe from lists.  Notifies user & admin of subscription changes  Hasn’t changed much. Just maintaining compatibility.  Still based on Community Builder, but future version using Joomla custom profile fields might be possible.

  19. Setting it Up  Install DadaMail using the same database as the Joomla site.  Configure DadaMail to your preferences, USE MySQL.  Create your lists. Recommend making lists “closed”.  Install Community Builder. Configure to preference.  Add one profile field per email address to support.  Install and configure Dada Mail Subscriptions CB Plugin.  Enter Dada Mail settings database table name (dada_settings)  Identify email address fields by name (email, cb_email1, etc.)  Multiple email addresses must be enabled if desired  Setup notification messages  Set to admin, user, or both  Email subject, return address, etc.  Message/subject tags: [USER], [SITE], [EMAIL], [OLD], [LIST]

  20. CB Email List Profile Fields Each email list needs a field setup like the one on the left. Use single for only one list or multiple for several lists. Add one option for each list, e.g.: • Account Email • Email #2 • Email #3 Each email address in addition to the account email needs a field like the one on the right. It is recommended that all of these fields be located on a profile tab specifically for email lists.

  21. Plugin Configuration Panel

  22. Email List Field Options  It is critically important that you specify the options for the email list in the exact same order you specify the email address database field names in the plug-in configuration. List field options configuration Plug-in fields configuration

  23. User Profile Layout  A separate profile tab for Email Lists is recommended.  Explain for each list:  Usage  Restrictions  Privacy policy  Create a multi-select checkbox field for each list:  One checkbox field for each email address supported  Could use multi-select drop list field, but uglier  Put fields for additional email addresses on this tab.

  24. Sample Email Lists Tab Layout Use of the Regular Labs Tabs & Sliders plugins is highly recommended

  25. How it Works  Uses the Community Builder event system.  Events generated for front or back end profile updates  Plugin checks for changes to named email fields  Updates Dada Mail subscriptions table directly  Sends email notifications as configured  Event generated for new, approved site registrations  Auto-subscribe option in plugin configuration  Event generated for user deletion  Plugin deletes all Dada Mail subscription records for all addresses in named email fields  Sends an unsubscribe notification email

  26. Change Management & Distribution  JoomlaCode.org is where open source Joomla developers archive their code.  I also use this as my release and download system

  27. Dada Mail Integration Links  Dada Mail Product webpage  http://dadamailproject.com  Download  There’s a free download link on this page  http://dadamailproject.com/purchase/pro.html  Community Builder  Joomlapolis account required for free downloads  http://joomlapolis.com  Dada Mail Subscriptions CB Plugin  http://joomlacode.org/gf/project/dadamailmanager/frs/  Note: The manager component is obsolete

  28. Creating Reports from Your Joomla Site Database with Jaspersoft iReport Designer

  29. Jaspersoft iReport Designer  A free report design tool (no longer supported)  An Eclipse-based replacement is available, but is HUGE  Uses a combination of SQL and Java to produce beautiful reports.  Similar in concept to MS Access report designer.  Yes, you need to write code!   Yes, you need to understand the database schema.   But it’s largely a visual tool.   Accesses your MySQL server directly.  May require IP permission grant by hosting company.  Queries can be any combination of database tables.

Recommend


More recommend