AlanBarber.Org

Twitter Updates

    Follow me on Twitter

    ExpressionEngine

    Saturday, August 27, 2005

    Now running ExpressionEngine 1.3.1

    Well it took a while to get around to it but I finally upgraded the site to ExpressionEngine 1.3.1.  It’s been out for a while now but I’ve just been kinda busy in real life.

    I’m not fully finished with the upgrade though.  Currently, this is a stopgap while I do some major overhauling.  I’m going to move the install around so that I can use EE to run all my different sites that I have.  I want to create a central location where I can manage all my sites from one single location.  It’ll take some time to get this job finished but when it is it will be well worth the effort I’m sure.

    Anyhoo, this new version has many new features and bug fixes from the old 1.2.1 version I have been running since like January of this year.

    Posted by abarber on 08/27/2005 at 03:50 PM
    BloggingExpressionEngine • (0) CommentsPermalink

    Sunday, January 16, 2005

    ExpressionEngine Version 1.2.1 Released

    The fine folks at pMachines have released an updated version of ExpressionEngine.  Compared to the previous releases this one is pretty minor in scale as far as changes/updates go.

    The main new features they added are:
    * A stand-alone version of the “publish” form, so weblog entries can be submitted from any page.
    * An improved plugin manager. Plugins can now be browsed and installed directly from your control panel. Big thanks to Chris Ruzin for this feature.
    * URL mapping for people who migrated from pMachine Pro, allowing pM style links to point to their new EE location.
    * Redesigned template installer which allows new template designs to be incorporated more easily.

    I’m downloading the new version right now.  As usual I’ll be testing this release out for about a week on my private test server before I install it on the live site.  No offense to pMachines but every time they’ve done a new release they end up putting out bugfix releases within a few days.  So, I figure it’s best to just play with the new version for a while in the safety of a test environment while I wait for the bugfixes to come out.  It seems rather silly to install the new version on the live site only to install the bugfix version a few days later.  I’m out in the boonies and only have dialup!  Doing major uploading like when you install a new version of EE takes a long time for me.  Once a week is my limit.

    Posted by abarber on 01/16/2005 at 01:28 PM
    BloggingExpressionEngine • (0) CommentsPermalink

    Sunday, January 09, 2005

    Getting back into the programming groove

    I decided today to get back into programming after being burned out from work for so long.  I work at UPS loading boxes every day.  Loading boxes all day is about the most brain-dead a job you can do.  You would think I would come home and want to programming just to use my brain. Yet, I just don’t feel like it.

    I haven’t written a line of code since the middle of October.  So, today I made the effort to get back into coding.  I had started several programming projects a while ago and just stopped.  They projects were add-ons for the ExpressionEngine web publishing system that I’m using.

    I really haven’t done any coding today.  Today was just prep and setup.  I’m making a FreeBSD 5.3 test server to do the development work on.  Right now I have the OS installed but I’m doing a buildworld on it in order to update everything and patch security holes.  Tomorrow I’ll get apache, mysql, php, etc installed and running.  The next day I’ll finally get ExpressionEngine installed and my special backup/rollback procedure configured and running.

    Then after all that I’ll actually get around to start coding!

    I’m sure I’ll have enough on my plate for a while but I’m already thinking of some other programming projects I’d love to work on so we’ll just see how much I manage to get done.

    Posted by abarber on 01/09/2005 at 10:43 PM
    BloggingComputers & TechnologyWorkBSDExpressionEngine • (1) CommentsPermalink

    Monday, November 22, 2004

    ExpressionEngine 1.2 and Photo Gallery Now Available

    quote:


    ExpressionEngine Version 1.2 has officially been released.  Version 1.2 comes with the ExpressionEngine Photo Gallery, enabling users to display their digital photos on the web.

    With its intuitive interface, users can upload, edit, and display photos organized into categories.  As an ExpressionEngine Module, the Photo Gallery integrates seamlessly into the ExpressionEngine publishing system.

    The ExpressionEngine Photo Gallery supports advanced features such as image watermarking, cropping, resizing, rotation, thumbnailing, user commenting, nested categories, batch importing, multiple galleries, and more.  Photos
    can even be emailed to the gallery!

    Version 1.2 also delivers several new core features and improvements.  For a complete list please see the change log in the ExpressionEngine user guide.

    Version 1.2 is a free update for existing ExpressionEngine users.  It can be downloaded by visiting the download page at www.pmachine.com.



    I’ve already downloaded 1.2 but it’ll probabbly be another week before I update this website.  I’ll install the new version on my private test server to play around and check for any bugs/quirks plus just wait to see if they release an update between now and next weekend.  If all looks good then I’ll switch over. 

    I’m really excited becuase I’d like to start using the built in Photo Gallery to manage all my picture archives.  It’s an impressive list of features and something I’ve been waiting a while for.

    Posted by abarber on 11/22/2004 at 09:38 AM
    BloggingExpressionEngine • (0) CommentsPermalink

    Friday, October 08, 2004

    ExpressionEngine modules I'm working on

    This is really for my own use more than anything for the public… sorry smile

    1) File Manager - A basic web based file manager that includes all your usual file and directory tools.  create, edit (text files like html, php, xml, css, etc), rename, delete, copy, move, upload, etc.

    2) Page Counter - website stats system to track page hits on comments, monthly, daily, archives, etc.

    3) Download Manager - provide functionality similar to places like fileplanet.  setup controlable downloads with restrictions based on members, number of concurent users, etc.

    4) Live Chat / IM - some sort of live or semi-live text chat system to integrate into EE user system.  Not sure on this one.  Might require some java applet work????

    5) ...

    That’s what I have in the queue for right now.  The file manager is about 50% finished right now.  I hope to get my first beta out by end of next week.  That’s if everything goes good.

    Posted by abarber on 10/08/2004 at 09:48 AM
    BloggingExpressionEngine • (1) CommentsPermalink

    Tuesday, September 21, 2004

    How to make an ExpressionEngine test site

    How to make an ExpressionEngine test site for module and plugin testing

    If you currently are or planning to do module and/or plugin development work for ExpressionEngine you really should have a dedicated private test installation of EE that you can work with.  While you could use your public installation it’s not a good idea.  Do you really want to have your public blog throwing out errors or completely being wiped out because of a bug in the module or plugin you were working on? 

    This tutorial will walk you through step by step on how to setup a test installation.  The ultimate goal being that once you follow these steps you’ll have a clean install of EE that you can test your modules or plugins with.  The benefit of following this guide is that at any time you can do a complete rollback to the fresh installation in just seconds.  Should you accidentally blow up your database or mangle the configuration all you’ll have to do is run a simple command line script and bingo it’s just like new again!

    A few things to point out before we begin.  First off, this should work fine for any *nix OS but I am using FreeBSD for my server.  Second, you will need command line access to your server. IE you’ll need to use telnet, ssh, or be working locally.  Third, this does need to be a clean, private install.  The install you do should be completely separate from anything else including the use of MySQL databases and server directories.  Fourth, I’m using my real world setup as the example in the tutorial just to help make it clearer.  You should change the names and directories where appropriate to match your setup.

    Step 1: Installing EE
    There really is no need to explain this.  Just do a normal fresh install of EE.  Create a new database and use a new directory structure separate from anything else.  I created a new MySQL database and user account called “ee_test_site”.  I installed EE in a separate folder “/home/abarber/public_html/ee_test_site” too.  Just copy the EE image, system and user_guide folders into this new folder.  IE “home/abarber/public_html/ee_test_site/images”.

    Step 2: Configure and Setup the EE test site
    Just go through and setup the test site.  Set all the admin configurations, build the templates, create a few sample members, create a few sample entries, etc.  Basically, you want to have the site setup just how you want it to look and act every time you do a rollback. 

    This is the most crucial step!  You need to have everything exactly as you want it.  We’ll be making a backup of the entire installation and the rollback will totally wipe out everything and reset it to how it is from the backup. 

    If for example you forget to set template cacheing on but really do want it on.  Every time you do a rollback you’ll have to go in and turn on template cacheing because the backup had it off!

    So take a few extra minutes to thoroughly check every single thing.  Yes even the directory contents.  If there are files you do or do not want in the backup manage them now.  It’ll make life much easier later.

    Step 3: Create backup directory
    Someplace you should make a directory to hold and run the rollback from.  I prefer to make a folder called “rollback” in my home directory.  “/home/abarber/rollback”

    Step 4: Make the MySQL backup
    We’re going to use mysqldump program to create the backup.

    At the command prompt type:
    mysqldump -u ee_test_site -p[enter password] --add-drop-table --databases ee_test_site > /home/abarber/rollback/ee_test_site.sql

    Step 5: Make the EE installation backup
    We’re just going to make a simple tar gziped file with the contents of the website folder.  That means the actual EE files, images, etc.  Remember what I said above?  This is your last chance to make any changes to the files in the backup!

    At the command prompt type:
    tar cvzf /home/abarber/ rollback/ee_test_site.tar.gz /home/abarber/ public_html/ee_test_site

    Step 6: Create the rollback script
    I call it rollback.sh and place it in the “/home/abarber/backups/rollback” directory.

    -- copy below --
    #/usr/bin/sh
    echo Rolling back EE Test Site blog…

    echo Reloading database defaults into MySQL…
    mysqladmin -u ee_test_site -p[enter password] -f drop ee_test_site
    mysql -u ee_test_site -p[enter password] < /home/abarber/rollback_data/ee_test_site.sql

    echo Reloading EE installation…
    rm -rf /usr/home/abarber/public_html/ee_test_site
    cd /
    tar xfz /home/abarber/rollback/ee_test_site.tar.gz

    echo Resetting file and folder permissions…
    chmod 777 /home/abarber/public_html/ee_test_site/images/captchas
    chmod 777 /home/abarber/public_html/ee_test_site/images/uploads
    chmod 777 /home/abarber/public_html/ee_test_site/system/cache
    chmod 666 /home/abarber/public_html/ee_test_site/system/config.php
    chmod 666 /home/abarber/public_html/ee_test_site/system/config_bak.php
    chmod 666 /home/abarber/public_html/ee_test_site/path.php

    echo Rollback finished!
    echo
    -- copy above --

    Note - Remember to chmod the "rollback.sh" script to give it execution permission.

    Step 7: Test the rollback script
    Make a few changes in the control panel such as delete a few entries or delete a template or change a category name.

    Now go to the rollback directory and type “./rollback.sh” at the prompt.  Check the control panel again.  The missing entries and changed categories should be back.  If not we have a problem and need to figure out what we did wrong.

    Now lets try something a bit more crazy.  Just go in and start randomly deleting files until the website no longer works.  Oh no!  The site is ruined.  Wait lets use the mighty rollback again!  Sit back and watch in amazement as the backups are reloaded and your site is saved.

    So what’s the point of all this you might ask?  Software development is a science.  When you’re working on a module or plugin it’s nice to always have a fresh clean install to do your tests.  That way whenever you make changes to your software you can rollback the system and have identical test parameters. This helps to keep bugs from cropping up that are not a result of your software but the test environment being changed from a previous test.

    This you may realize comes in very handy for module development since modules make changes to several database tables and probably create their own.  That way you don’t get errors or bugs showing up because you have already installed 3-4 different versions of the module before.  When you’re working on that module you know you have a fresh clean install every time you start testing it.  It’ll make it just that much easier to debug!

    I hope people find this useful.  I’ll admit it’s probably not the clearest written tutorial but you should get the idea of how to set this up.  I’m using it and it works great.  I can screw around with the test site to my hearts content then just run the rollback script and it’s back to normal in 30 seconds.

    Posted by abarber on 09/21/2004 at 07:30 AM
    BloggingExpressionEngine • (0) CommentsPermalink

    Monday, August 23, 2004

    A Quick CSS Tip

    Here’s something I just learned today…

    When coding CSS for the pseudo-classes of the < a > tag, the states should always be coded in this specific order:

    a:link
    a:visited
    a:focus
    a:hover
    a:active

    If you don’t do it in this order it can cause issues with links in most browsers.  Including improper rendering or even failure to follow the CSS display settings for links.

    I actually didn’t know it mattered.  However I know it does now.  The order of the link tags was wrong in the CSS for this site and I have had issues with link rendering.  Some links would not change colors when I would hover over them.  I had written it off as a stupid browser issue.  However, Sure enough soon as I changed the order in my CSS all the link problems went away.

    A quick note that most of the included themes with ExpressionEngine do have improper ordering so all you EE users out there should go in and correct this.

    But keep that in mind for all your web designers too.  Just a nice little tip to remember.

    Posted by abarber on 08/23/2004 at 10:09 PM
    BloggingComputers & TechnologyTips & TricksExpressionEngine • (1) CommentsPermalink
    Page 1 of 2 pages  1 2 >