SSL Labs ScoreSecurityHeaders.io ScoreHSTS Preloaded

StaticEmail 1.2

Overview

Prevent one or more usergroups from changing their email addresses!

On request, I made this extension similar to my StaticPassword extension - it even works the same way.

Usage is simple - enable the plugin after selecting which usergroups will be prevented from email address changes (use CTRL or Mac Command key to select multiple). When saved, the users in those groups will not be presented with the email fields when editing their account details. Additionally, it prevents submission of email addresses in form data (just in case you get someone who thinks they're smarter than the plugin).

Installation

  1. Download StaticEmail from the RicheyWeb download page.
    • This page will remain unlinked, as the link may change in the future. Visit http://www.richeyweb.com and use the search feature - search for "StaticEmail".
  2. In Joomla /administrator, go to the "Extensions" menu, the "Manage" sub-menu, and the "Install" sub-menu.
  3. Select the "Upload Package File" tab
  4. Press the "Choose File" button to browse your system and locate the plugin file you downloaded
  5. Press the "Upload & Install" button

At this point, the extension is installed but not enabled. You can find the plugin by going to the Extensions menu and selecting "Plugins". When in the plugin manager, search for "StaticEmail".

Configuration

There is only one configuration - Restricted Groups. Choose one or more user groups and the members of those groups will be restricted from changing their email address while editing their profile.

HELP

Please submit bug reports!

Discuss this article in the forums (0 replies).

Age Of 1.0

Overview

Replace date tags within your content items with formatted date strings that count up or down to the specified date. Prefix and suffix based on past or future dates. Date range restrictions, and more.

Use the plugin configuration to set defaults, such as standard output length (how many units of measure to display) as well as default suffixes and prefixes for both past and future dates.

Within each plugin tag, you can specify if the tag is to display only within a specific date or time range. All dates can be entered using standard PHP Time, Date, Compound, or Relative Format.

Installation

  1. Download EXTENSIONNAME from the RicheyWeb download page.
    • This page will remain unlinked, as the link may change in the future. Visit http://www.richeyweb.com and use the search feature - search for "EXTENSIONNAME".
  2. In Joomla /administrator, go to the "Extensions" menu, the "Manage" sub-menu, and the "Install" sub-menu.
  3. Select the "Upload Package File" tab
  4. Press the "Choose File" button to browse your system and locate the plugin file you downloaded
  5. Press the "Upload & Install" button

At this point, the extension is installed but not enabled. You can find the plugin by going to the Extensions menu and selecting "Plugins". When in the plugin manager, search for "EXTENSIONNAME".

Configuration

Instructions:

  • Parameter Types:
    • length
      • Value: Integer - can be a quoted or unquoted integer between 1 and 6. Values above 6 are ignored.
      • Sets the number of values to display. For example, if set to 2 and the result is 1 year, 1 month, 1 day, 1 hour, 1 minute - the output would be 1 year and 1 month.
      • Overrides Number of Elements option in the plugin basic settings.
      • Example: {ageof length=2}tomorrow noon{/ageof}
    • pastfuture
      • Value: Boolean - can be a quoted or unquoted 1 or 0. Any value other than 0 is considered true.
      • Enables/Disables the default suffix for the output. If in the past - the output is followed by ago, if in the future - the output is followed by from now.
      • Overrides Past/Future Suffix option in the plugin basic settings.
      • Example: {ageof pastfuture=0}tomorrow noon{/ageof}
    • pastprefix
      • Value: String - Must be quoted unless it is a single word containing no spaces.
      • String to prepend to the output if the date is in the past.
      • Overrides Past Prefix option in the plugin basic settings.
      • Example: {ageof pastprefix='A long time ago, '}yesterday noon{/ageof}
    • pastsuffix
      • Value: String - Must be quoted unless it is a single word containing no spaces.
      • String to apppend to the output if the date is in the past.
      • Overrides Past Suffix option in the plugin basic settings.
      • Example: {ageof pastsuffix=' - in a galaxy far, far away.'}yesterday noon{/ageof}
    • futureprefix
      • Value: String - Must be quoted unless it is a single word containing no spaces.
      • String to prepend to the output if the date is in the future.
      • Overrides Future Prefix option in the plugin basic settings.
      • Example: {ageof futureprefix='Sometime in the near future, maybe in '}tomorrow noon{/ageof}
    • futuresuffix
      • Value: String - Must be quoted unless it is a single word containing no spaces.
      • String to apppend to the output if the date is in the future.
      • Overrides Future Suffix option in the plugin basic settings.
      • Example: {ageof futuresuffix=', I plan on having lunch.'}tomorrow noon{/ageof}
    • before & after
      • Values: date strings - Any date format accepted in the valid date formats below. Be sure that your between value is a date or time before your and value.
      • Display only if the current date/time is before/after or between these two values. Can be used individually, or together.
      • Example: {ageof after='today 17:00' before='tomorrow 8:00'}tomorrow 8:00{/ageof}
  • Valid Date Formats:
  • Just for fun:
    • Michael Richey is {ageof pastfuture=0 length=1 pastsuffix=' old. Yikes!'}1/21/1974{/ageof}
    • Simon Richey is {ageof pastfuture=0 length=1 pastsuffix=' old. Wow!'}12/6/2007{/ageof}
    • {ageof between='today 17:00' and='tomorrow 8:00' pastprefix='The store closed '}today 17:00{/ageof}{ageof pastfuture=0 between='today 17:00' and='tomorrow 8:00' futureprefix=' it will re-open in ' pastsuffix='.'}tomorrow 8:00{/ageof}{ageof between='today 8:00' and='today 17:00' futureprefix='The store will close in '}today 17:00{/ageof}
    • The United States Declaration of Independence {ageof length=1 postprefix'was signed ' futureprefix='will be signed '}7/4/1776{/ageof}

HELP

Please report bugs!

Discuss this article in the forums (0 replies).

Before/After 1.4.1

Overview

Based on the wildly popular CatchMyFame.com Before/After jQuery plugin, the Joomla Before/After plugin provides 100% of the functionality in a non-commercial content plugin.

Use it anywhere you want, as many times as you want. In articles, category descriptions, modules - anywhere Joomla processes content plugins.
Note: The CatchMyFame.com Before/After jQuery plugin is released under the CC Attribution-NonCommercial-ShareAlike 3.0 Unported license. If using this plugin on a commercial site, a license must be purchased from CatchMyFame.com. Several other paid extensions in this category use the same CC licensed javascript - and even though you pay for the Joomla extension, you still have to license it for commercial use with CatchMyFame.com.
The plugin provides default settings, plus the article author can override each of the default settings in the image wrapper using data attributes. Full instructions are in the plugin configuration page. Additionally, I've implemented the Touch-Punch plugin, so this works on touch devices such as iPad, iPhone and Android tablets and phones.
I wrote this on commission, and my client waived his option for copyright because he believed as I do - that this plugin will benefit the Joomla community. Anyone who is familiar with me or my extensions knows that I love free.

Installation

  1. Download Before/After from the RicheyWeb download page.
    • This page will remain unlinked, as the link may change in the future. Visit http://www.richeyweb.com and use the search feature - search for "Before/After".
  2. In Joomla /administrator, go to the "Extensions" menu, the "Manage" sub-menu, and the "Install" sub-menu.
  3. Select the "Upload Package File" tab
  4. Press the "Choose File" button to browse your system and locate the plugin file you downloaded
  5. Press the "Upload & Install" button

At this point, the extension is installed but not enabled. You can find the plugin by going to the Extensions menu and selecting "Plugins". When in the plugin manager, search for "Before/After".

Configuration

Joomla implementation of the CatchMyFame.com jQuery Before/After plugin.

HTML Structure

There are several requirements for the HTML before/after structures for this plugin to operate correctly.

  1. The outer wrapper must have the class "plg_content_beforeafter".
  2. The wrapper must contain exactly 2 images, wrapped in <div> tags.
  3. Each of the images must be exactly the same size.
  4. Each of the image tags must have width and height attributes.

Example:
<div class="plg_content_beforeafter">
<div><img src="https://cdn.richeyweb.com/path/to/before.png" alt="before" width="400" height="300" /></div>
<div><img src="https://cdn.richeyweb.com/path/to/after.png" alt="after" width="400" height="300" /></div>
</div>

As long as that basic structure is in place, the plugin will function properly. Additional classes can be added to the wrapper in order to achieve the desired styling.

Plugin Defaults

The following tab contains the plugin defaults. In order to achieve consistent function throughout your site, you can set defaults so all of your before/after images behave the same way. Each of these defaults can be altered on a per-image (pair) basis.

Overriding the Defaults

Each attribute defined in defaults can be changed on a per image (pair) basis using a data attribute in the wrapper. The data attribute must be named data- followed by a lowercased javascript option name found in the defaults tab.

Example:
<div class="plg_content_beforeafter" data-animateintro="true" data-introdelay="1500" data-introposition="0.25">
...

Note: The beforeLinkText and afterLinkText can both be overridden with the data attribute. Plugin Defaults for these two settings refer to the primary language translation, which are controlled by the Joomla language manager. Yes, you can override them with data attributes.

onReady

One very nifty piece of the plugin is the ability to trigger a javascript function when the before/after images are ready. This can be a function!

Example:
function(){ /* do a bunch of things */}

HELP

Please report bugs!

Discuss this article in the forums (0 replies).

Loggie 1.0

Overview

Are your server error logs hard or impossible to retrieve? Do you even know how to get them? Loggie can help!

If your host is anything like mine, your log files are hard to get to. When they are available, they're slow to retrieve. In my case, it takes 5 minutes or more for a log to appear in the log file - and I must download it repeatedly looking for the errors I'm trying to find.

Loggie is a system plugin that captures those errors destined for the PHP error log file. These errors are deposited into a database table and displayed within the plugin "Logs" tab. No more searching for log files, sifting through them, begging your host to get current logs - Loggie cuts out the middle man.

Usage is simple. When you need to capture the logs for fast review - enable the plugin. It's that simple.

The only other option is to clear the Loggie Logs table, which triggers the plugin to return all of the logs to their original destination.

Warnings:

  • Loggie is for temporary use only. Extended use can and likely will fill your database.
  • Loggie inserts a warning on every page while it is enabled - reminding administrators that it is enabled and should be disabled ASAP.
  • I will not answer questions asking how to disable the warning message. When you're knowledgeable enough to figure out how to disable the message, you'll understand why you should disable the plugin instead.

Installation

  1. Download Loggie from the RicheyWeb download page.
    • This page will remain unlinked, as the link may change in the future. Visit http://www.richeyweb.com and use the search feature - search for "Loggie".
  2. In Joomla /administrator, go to the "Extensions" menu, the "Manage" sub-menu, and the "Install" sub-menu.
  3. Select the "Upload Package File" tab
  4. Press the "Choose File" button to browse your system and locate the plugin file you downloaded
  5. Press the "Upload & Install" button

At this point, the extension is installed but not enabled. You can find the plugin by going to the Extensions menu and selecting "Plugins". When in the plugin manager, search for "Loggie".

Configuration

There is only one configuration, and that is the option to return captured logs to the log file. Basic use - enable the plugin and do whatever you need to do in order to generate a log. When you're finished, disable the plugin and explore the captured logs on the "Logs" tab in the plugin.

HELP

No, I will not explain how to turn off the warning message. Report any bugs.

Discuss this article in the forums (0 replies).

NicePanel 1.15

Overview

Sliding panels are nice, but have been restrictive and difficult - until now! Top and bottom tabbed sliding module panels done right with NicePanel.

NicePanel provides an administrator the ability to create as many top and/or bottom sliding panel tabs as (s)he wishes. Here are the features:

  • Separate top/bottom panel configurations
  • Automatic tabs - based on the module title
  • Preserves Javascript events (unlike some other panels)
  • Independent left/right tab alignment
  • Independent tab styles
  • Tab content honors Joomla ACL

I've added the ability for an administrator to use the CSS textarea applied by the plugin, or to turn off the styling portion so the panels can be styled using the template stylesheet. NicePanel is light - no additional JS frameworks required - NicePanel is pure MooTools.

Installation

  1. Download NicePanel from the RicheyWeb download page.
    • This page will remain unlinked, as the link may change in the future. Visit http://www.richeyweb.com and use the search feature - search for "NicePanel".
  2. In Joomla /administrator, go to the "Extensions" menu, the "Manage" sub-menu, and the "Install" sub-menu.
  3. Select the "Upload Package File" tab
  4. Press the "Choose File" button to browse your system and locate the plugin file you downloaded
  5. Press the "Upload & Install" button

At this point, the extension is installed but not enabled. You can find the plugin by going to the Extensions menu and selecting "Plugins". When in the plugin manager, search for "NicePanel".

Configuration

First, take the modules that you wish to be presented as tab panels, and assign them to a new module position (you can just type it into the module configuration). For simplicity, I'm going to call the new positions "nicepaneltop" and "nicepanelbottom" - but in reality, you can name them anything you want. The module order will be the tab order (if using right tab alignment, the tab order is reversed)

Then, in NicePanel configuration, set the module position to be presented in the top and bottom panel positions. Save it.

You're done. Panels with no pain.

HELP

Please report bugs

Discuss this article in the forums (6 replies).