http://www.purdydesigns.com/ News http://www.purdydesigns.com/ News en-us sales@purdydesigns.com SharpEdge CMS SharpEdge 3.32.0 Now Available http://www.purdydesigns.com/en/news/comments/SharpEdge-3.32.0-Now-Available http://www.purdydesigns.com/en/news/comments/SharpEdge-3.32.0-Now-Available Version 3.32.0 is now available for download. In This Latest Version we've intergrated twitter bootstrap into the frontend and backend templates. This gives interfaces a much nicer overall look. We've also fixed a few minor bugs. We've also made some changes to the structure of the admin interface to make things a little cleaner.

]]>
Sun, 13 May 2012 18:56:15 -0700
SharpEdge 3.30.11 Now Available http://www.purdydesigns.com/en/news/comments/SharpEdge-3.30.11-Now-Available http://www.purdydesigns.com/en/news/comments/SharpEdge-3.30.11-Now-Available This includes some little fixes as well as some functional improvements in a few systems. I've also moved view files all into the specfic template folders so these files are connected directly on a template by template basis. This is a planned re-structure of these files to make updating of systems more straight forward in the future. Many updates to the language file and view files with also a new custom language file that is designed to be used for custom addtions to SharpEdge so that custom changes don't get overwrriten during updates.

]]>
Fri, 27 Apr 2012 06:10:33 -0700
CableSoft WebAct 1.03.12 Now Available http://www.purdydesigns.com/en/news/comments/CableSoft-WebAct-1.03.12-Now-Available http://www.purdydesigns.com/en/news/comments/CableSoft-WebAct-1.03.12-Now-Available CableSoft WebAct Version 1.03.12 is now available. This update includes operator access controls and permission systems. Which allows operators to perform basic tasks such as Transfer, Compensate Days or Delete Customer Accounts. Administrators have the ability to control which (Sites) the operator is allowed to access and perform those tasks. Also included in this update is a new administrator log which allows the administrator to see the communication log to CableSoft Server (including errors) as well as an operator log so they can see which users are performing operator tasks and what tasks they are performing. Both logs can be cleared through the administrator interface.

 

]]>
Mon, 02 Apr 2012 23:43:22 -0700
SharpEdge 3.30.0 is here! http://www.purdydesigns.com/en/news/comments/SharpEdge-3.30.0-is-here http://www.purdydesigns.com/en/news/comments/SharpEdge-3.30.0-is-here
Below is a full change log from 3.22.0 until this version 3.30.0

  • Added Installation System - Basic Phase 1
  • Added Licensing System
  • Added Proper Widget Structuring System.
  • Added Manage Comments Screen (for blog/news)
  • Added Access to User / Role / Group System
  • Added Access Module Control System (For Roles)
  • Added AddThis Support for blog/news, and new widget.
  • Added Google Analytics ID Code
  • Added Google Analytics On/Off (Turns embeded javascript code on or off)
  • Added Page Draft System - Ability to save pages as a draft for later editing or approval.
  • Added Ability to Control Admin Module Permissions Via Roles
  • Added Gallery Zip file Import and extract, creates Thumbnails and populates the database.
  • Added JQuery Uniform
  • Added Proper 404 error handling on non existant pages.
  • Added Edit Profile Option - Frontend
  • Added Short URL Option to website configuration - This is still considered Experimental.
  • Added New Main Module for new redirection method
  • Added JScrollPane to core - Includes default css in default design.
  • Updated Codeigniter Framework to Version 2.1.0
  • Updated Active Record get_where database calls.
  • Updated JQuery UI to Version 1.8.16
  • Updated JQuery to 1.7.1
  • Updated Page System, Includes Meta Options per page, not entering anything will use defaults.
  • Updated Page System, Added Hide Page option.
  • Updated Page Interface, Shows if a page has a draft available.
  • Updated Navigation -> Ability to Hide Menu Items from view
  • Updated functions to account for new user roles and group system.
  • Updated Admin Interface fully 100% width based.
  • Updated Admin Interface into Tabbed Format.
  • Updated Default Frontend Layout Design / Not Applicable to current users
  • Updated Minified Admin CSS
  • Updated Error Pages
  • Updated Profiler
  • Updated Login Widget
  • Updated IonAuth to Version 2
  • Updated Database Added Sites Table
  • Updated Database Added Module Permission Table
  • Updated Database Added Page Drafts Table
  • Updated Database varchar field sizes
  • Updated Database Added post_categories Table.
  • Updated Search System - Some Minor Code Updates.
  • Updated Frontend Model Functions
  • Updated Language Files (English/French)
  • Updated Template Editor (Removed Need for FTP Class)
  • Updated Slideshow (Removed need for FTP Class)
  • Updated Upload (Removed need for FTP Class)
  • Updated Gallery (Removed need for FTP Class)
  • Updated Gallery Configuration - Control over dynamic image creation sizes.
  • Updated Gallery Delete Image now also deletes the local image files including thumbnails
  • Updated Gallery Re-Structure Categories they make specfic folders on the server per category.
  • Updated Gallery Frontend to new folder structure.
  • Updated Contact System using new isEmail option for keeping correct header information on multiple lanaguages.
  • Updated Website Configuration (Set default Home-Page Variable) - Default is Home-Page
  • Updated CKEditor Toolbar - Removed some unusable options, restructured options.
  • Updated Admin Controller functions to standard form validation.
  • Updated News Widget (Limit Characters of News Content)
  • Updated Blog Configuration Limiting Characters Option - Interger.
  • Updated Blog/News Category Tags now functional - New functions will be added in future releases
  • Updated Default Font Sizes based on Percent and EM's - Applies to both the backend and frontend default designs.
  • Updated CkEditor Configuration, adds img_margin class to images and replaces inline style with proper xhtml markup.
  • Renamed Modules to Widgets
  • Renamed Controllers to Modules
  • Renamed Containers to Page Layouts.
  • Removed Extra Configuration Menu Items as this system is now loaded in 1 screen.
  • Removed some old Image and CSS data related to old default theme.
  • Removed FTP Configuration no longer in use.
  • Removed Gallery View (Javascript) Depreicated
  • Fixed Javascript bug on News/Comments
  • Fixed Wrong Loading Screen on Manage Blog Categories (Add/Edit Redirection)
  • Fixed Multi lanaguage contact forms (Email field) - New Selectable option (Is Email Boolean)
  • Fixed Gallery Display bug
  • Bug CKFinder Didn't work properly with latest Codeigniter 2.1.0
  • Bug Submission of some forms with empty require fields didn't reload the page correctly.
]]>
Wed, 21 Mar 2012 14:07:08 -0700
CableSoft WebAct More News http://www.purdydesigns.com/en/news/comments/CableSoft-WebAct-More-News http://www.purdydesigns.com/en/news/comments/CableSoft-WebAct-More-News
This is really the first project I decided to really do a lot of ajax code and a lot more jquery than I normally use. As I wanted the interface for the public to be as simple and straight forward as we could possibly make it. So we created it in a Wizard type format where the user is guided by a step by step process to providing the information needed to the TV Server Software (C++ application) as well as do the payment processing.

Some of the feature are for example. The ability to control each service from within the C++ application which can be configured to not allow a service to go under a specific amount of days. Typically this kind of system is used where the services are limited by Daily,Weekly,Monthly billing by a per day price and of course it's cheaper to buy a week or a month than it is to buy 1 day or a couple of days of service. They can also configure which rate to use on the web application so that each service can use any rate. Each service can have up to 5 different rates per service. The other option is what is known as a STAY mode which is a fixed 1 time price for the entire time the customer will be at the location and will want TV service. The Web Application is designed to handle all of these modes. Most of these modes already existed in the C++ application but some of them had to be designed to work with the Web Application

The future of this project is bright as we have some idea's for a Call Center (Remote) version of the software, this will be more geared towards actual call centers that do the transactions for the customer when they call in to order. This of course means writing many new commands and routines for the C++ Server application to perform, and much more coding on the web application, but it's a natural progression to this software. The advantage this software has over the few others out there (not many) is that it's able to commuicate directly with the server application and get a response practically instantly. It's designed to be a real-time application rather than storing data and updating that data. As it's vital that this data is always correct. Mind you there will be a need in some situations to store some types of data moving forward with the Call Centre Version, for the most part this will be used for references to specfic customizations within the web application for example giving specfic user access rights to specfic "Sites" Since the server is a multi site application.

The current WebAct version nothing is stored aside from the actual orders. So Admistrators can re-submit an order if it failed to get to the C++ application which of course can happen when your dealing with communications over TCP/IP. All the information during the process of ordering is gathered directly from the C++ application in real-time, so this information is always recent. Currently we have both an Add Service, and Edit Service. So customers can add more days if they end up staying longer, We're currently in the process of writing post dated orders as well which will be saved in a queue. This is actually quite complicated when your're dealing with multiple "services" The web application will need to know before hand if a date slot is available. So writing more commands and routines are in the works for that aspect of the project. :) This queue of course will be saved on the C++ application as it's much more handy to have a real-time application that is designed to run 24/7 365 days a year to keep queue references in memory and be able to perform tasks instantly than to depend on the web application. ]]>
Sun, 26 Feb 2012 11:06:22 -0800
SharpEdge 3.22.10 http://www.purdydesigns.com/en/news/comments/SharpEdge-3.22.10 http://www.purdydesigns.com/en/news/comments/SharpEdge-3.22.10 Sat, 28 Jan 2012 22:02:53 -0800 CableSoft WebAct Development http://www.purdydesigns.com/en/news/comments/CableSoft-WebAct-Development http://www.purdydesigns.com/en/news/comments/CableSoft-WebAct-Development
The initial interface makes heavy use of ajax requests to make display updates seemlessly. This application is available as an Add-On option to the CableSoft package, and will be available in the near future. Other plans for revised versions of WebAct are also planned with more administrator related control functionality.

For example having abilities to modify configuration variables of the main application or remotes, and have the ability to add/edit subscribers as an administrator or service operator. These features are more long term goals for the application. CableSoft Server is a very large and complex piece of software with almost 10 years of programming development. It's primarily used in Hospitals and prisons to control TV Activation, but has many other features as well, and other add-on programs and options. It supports multiple sites(locations) that can be spread across the globe. This makes it a very powerful application. Therefore the WebAct software will be a consistent development process to even begin scratching the surface of what CableSoft Server's Abilities are.

CableSoft Server is Developed by DSP Software Systems, Coupled with PurdyDesigns/NewEdge Development working on CableSoft WebAct, and BH Communications. BH Communications is one of the very few suppliers for the hardware required for the TCP/IP communications and HL7 protocol devices that are needed to use the CableSoft Server program.]]>
Fri, 30 Dec 2011 19:02:26 -0800
SharpEdge 3.2.2 Build 9 http://www.purdydesigns.com/en/news/comments/SharpEdge-3.2.2-Build-9 http://www.purdydesigns.com/en/news/comments/SharpEdge-3.2.2-Build-9 SharpEdge Version 3.2.2 Build 9 has been packaged, and is ready. This build has quite a few updates, including the new admin interface. Codeigniter also released a new version 2.1 just recently so We've moved forward with that update as well. Main authentication has been pushed into a model file instead of being in each admin module.

This is because I been planning out the structure for module permissions based on group/roles and this will allow things to be much cleaner and easier to update moving forward. I've also included jscrollpane as a main javascript extension, and actually removed a couple of javascript systems that were way out of date and were not being used. Jquery ui was also updated to the latest release.  The news widget has a new limiting characters feature. Alot of other smaller changes as well. Version 3.3 is not far off now. :)

 

]]>
Fri, 02 Dec 2011 16:08:50 -0800
SharpEdge Interface http://www.purdydesigns.com/en/news/comments/SharpEdge-Interface http://www.purdydesigns.com/en/news/comments/SharpEdge-Interface This is just a quick screenshot of what the administration section of SharpEdge will look like in the upcoming Version 3.3. Click to see the full size. This is a shot of the website configuration screen, still working on some sections of the interface and new features. Right now this is fairly slow process as I have a lot of projects going on currently, but hopefully it won't be much longer. :) One of the new features for example is the import by zip for the gallery system. Which basically allows you to upload an entire zip file of images into a specfic category. The software will unzip and create all the thumbnails needed for the gallery, and than clean up after itself when it's done. So you don't end up using extra disk space for nothing. The source zip file is deleted after everything is completed.

The Page draft system is also in 3.2.2 Build 8 this is a new feature as well allowing you to create drafts of pages without updating the orginal page, incase you would like to come back later to edit the page. Quite a long list of updates, and other features  but those I guess I would say are the major ones. One system in the works is more control over user permissions on a module by module basis. This is part of what will build the structure for multi-site system coming in a future release.

This interface should make it's debut in Build 9.

]]>
Mon, 21 Nov 2011 16:11:24 -0800
Managed SharpEdge With Webhosting http://www.purdydesigns.com/en/news/comments/Managed-SharpEdge-With-Webhosting http://www.purdydesigns.com/en/news/comments/Managed-SharpEdge-With-Webhosting
Although depending on the person you may just not have the time to spend on these aspects and want to focus on building a quality high performance website that your visitors will love. In which case these packages will save you a lot of time and hassle. ]]>
Tue, 08 Nov 2011 01:35:34 -0800
SharpEdge Available for Purchase http://www.purdydesigns.com/en/news/comments/SharpEdge-Available-for-Purchase http://www.purdydesigns.com/en/news/comments/SharpEdge-Available-for-Purchase After a very long time SharpEdge has been software we have been working on and improving in our spare time for quite sometime. Finally it is ready enough for the public eye. You can now purchase SharpEdge on a monthly license directly from our billing software. The reason we are only supporting monthly licenses at this time is we want our product to be very polished before we offer investments.

Certain parts of SharpEdge are encoded using ionCube. The software will check for a valid license on a 7 day period. However if you don't renew the license your website will still function normally on the frontend, only the content management will be disabled during that time. The software stores a local key to minimize call backs to our server.

If you have any questions about the SharpEdge product, open a support ticket we'll be glad to help you out with your questions. A limited access demo will be uploaded and available soon. The Current Version is 3.2.2 (Build 7) which means we're in an incremental stage of the next version release.

]]>
Sat, 15 Oct 2011 16:03:19 -0700
Updated SharpEdge Version 3.2.2 http://www.purdydesigns.com/en/news/comments/Updated-SharpEdge-Version-3.2.2 http://www.purdydesigns.com/en/news/comments/Updated-SharpEdge-Version-3.2.2 I've just finished the next build of SharpEdge, now using Version 3.2.2 Yesterday I have updated all sites using version 3.x and even updated one using Version 2.x Most of the changes in this version were little fixes and improvements in the backend. Although I have added full support for CSRF Protection as well which is just another layer of security.

The next release will likely have more core features, and some other small improvements. Some of which will be user oriented like proper group permission control system. Although the login system supports Groups with Admin users and normal users. As the Admin area runs off this. One thing that is still missing is giving permissions based on the controls available within sharpedge.

It's really a core feature that any CMS should have. So This will be one of the major features in the next release. Most of the sites using SharpEdge haven't required this feature and thats mostly why it wasn't developed. This will expand past this point as this feature is important for building SharpEdge into a Multi Site platform. Which I have already done this before with a side project iLeagueRace.

I have some other idea's planned for making custom controls and systems more effiecent in terms of developing software as well. By seprating custom fields in different files. So that custom systems don't directly modifiy the core Content Management System. This is all in the name of pushing SharpEdge to an Enterprise Level Application, and will also allow for easy updating of the software, which is of course another system planned possible in a later version where you can update the software within the admin area. (Assuming your server is configured correctly)

]]>
Tue, 06 Sep 2011 14:37:09 -0700
Cripple those bots! http://www.purdydesigns.com/en/news/comments/Cripple-those-bots http://www.purdydesigns.com/en/news/comments/Cripple-those-bots
Now if your a server administration your thinking no big deal. I can handle that. Lots of great tools like mod_security, iptables. If you know what your doing you can protect yourself extremely well. This isn't the case however for most people as they don't have a clue about managing a web server or don't even have that level of access. Where am I going with this you might be thinking?

Well I recently decided to take a peak over at CloudFlare and after some initial reading I decided why not lets try this on one of the high traffic sites that I help manage. So I did just that. It was having some ongoing battles with bots. Doing fairly well mind you, but it was adding to maintenance of the site and server to some extent. Pretty much after putting that website onto the Cloudflare network spam pretty much as been non existent. I should mention this site has all the captcha images any one site owner would want and probably too many to some extent, but it's a high traffic site.

Their is other added advantages to using CloudFlare however they claim they improve most websites performance by at least 30%. Although I haven't actually noticed any improvement here, but the site is on a dedicated box so that is not surprising. I think if a regular joe using a Shared Hosting package used this they would notice some improvements, and of course my code is fairly well written in this case. Moving a long a bit what else this does is also gives you effectively a CDN. Which is very nice considering CloudFlares base service is completely free.

It does get a bit expensive if you want some of the pro features, a bit overpriced I would say, but it's no doubt a great service, I think in general services like these will be more widely used in the future as they pretty much take out a nice chunk of the technical knowledge requirements for running a fairly secure website. For those people the price is probably worth every cent. For someone like me it isn't because I know some stuff. :)

One of the advantages I do like is typically a dedicated box will limit how many ip addresses you can actually block. With cloudflare you can block as many as you like.

I wouldn't say this is a replacement for other security software on a website or server You can sort of consider it another layer of armor with added benefits. (CDN and performance) Any serious webmaster with a high volume of traffic should definitely take a look at these guys. CloudFlare]]>
Wed, 06 Jul 2011 05:19:21 -0700
Active Record Working with Sub Queries http://www.purdydesigns.com/en/news/comments/Active-Record-Working-with-Sub-Queries http://www.purdydesigns.com/en/news/comments/Active-Record-Working-with-Sub-Queries In cases where you need to perform two different queries, the typical way I see people do such queries are usually very inefficient. Normally performing the second query in a foreach loop for example. That means if you have a lot of results that same query is being performed every time. A classic example of this is Blog Comments. It's not unusual to see 5 or 10 blog posts on a single page. So instead of doing a query each blog post that is displayed on your page each time just to display a number of how many comments are posted. You can simply use a sub query that will only be performed the 1st time. So instead of having 6 or 11 queries you end up with 2 queries.

Below is an example of such a query in active record. Of course this kind of technique can be used in a variety of ways. So anytime you come across a situation where you need some other query data in the middle of a foreach loop than you should use a technique like below.


#Model Function
function get_blogposts($num, $offset)
{	
	$get_posts = $this->db		
		->where('blog.active', 'Y')
		->select('
		blog.blog_id,
		blog.name,
		blog.text,
		blog.active,
		blog.postedby,
		blog.date,
		blog.tags,
		(select count(blog_comments.blog_id) from blog_comments where blog_comments.blog_id = blog.blog_id) as comment_total,
		')
		->from('
			blog
		')
		->limit($num, $offset)
		->order_by('blog.date', 'desc')
		->get();
	return $get_posts;
}


So now you can perform your foreach loop and display the total comments found in only 2 queries.This might seem simple to some people but if you think about a large application with many different variables things can get messy very quickly. As well as if you have many comments made in a very active website for example. This will save you quite a bit of database load, as the procedure will only happen once instead of multiple times. Which ultimately will save you server memory as well.

They're is really almost no limitations to sub queries, you can even do sum calculations using a sub query like for example adding a total amount of multiple different rows from a database.


(select sum(ilr_team_data.points - ilr_team_data.pen_pts + ilr_team_data.bonus_pts + ilr_team_data.qual_pts) from ilr_event_result where ilr_event_result.team_id = ilr_team_data.team_id limit 1) as champ_points,

]]>
Tue, 07 Jun 2011 06:44:48 -0700
All New Look! http://www.purdydesigns.com/en/news/comments/All-New-Look http://www.purdydesigns.com/en/news/comments/All-New-Look Mon, 06 Jun 2011 09:43:07 -0700 Chiping away at the dust http://www.purdydesigns.com/en/news/comments/Chiping-away-at-the-dust http://www.purdydesigns.com/en/news/comments/Chiping-away-at-the-dust I have been hard at work on multiple projects over the last few months. That's kept me very busy. Hopefully some of these will be available in my portfolio in the near future. One of the main things I been working on with Omega Systems Group. Is continued growth of my Content Management System. (which will be named) eventually. Version 3 is close to being complete, which is looking pretty nice at the moment. I have almost started from scratch. Although I did re-use code (all good coders should) The entire structure has changed.

Partly due to the release of Codeigniter 2.0, but also I have implmented Modular Extensions written by Wiredesignz. Which is a pretty neat extension of Codeigniter. I've also have built in dynamic language support into Version 3. Well lets just say as dynamic as you can make language support.  Many other features of course some of which are just refined from Version 2, but to be compatiable with version 3. Being a bit of a peformance nut. I've gone through all of my code and refined it as much as possible and have improved the softwares base performance by about 50%. Some of which I've applied to some of my websites using Version 2.x

The Crazy part of all of this is PurdyDesigns is still running off Version 1. This is actually apart of the re-structuring I have been doing, So things will change around here eventually. :)

Anyway hopefully I will have more news in the future. I have a bunch of other news that I am keeping for now until I have something worth wild to mention. Until than happy coding or blogging or whatever works! :)

]]>
Fri, 04 Mar 2011 06:39:32 -0800
Using Captcha http://www.purdydesigns.com/en/news/comments/Using-Captcha http://www.purdydesigns.com/en/news/comments/Using-Captcha One of the things as a web user that I hate more than anything is captcha(security images) but unfortually with the ever growing amount of bots(robots) that not only try to spam websites, but also attempt XSS attacks. It's really a required element to a website that allows user interaction. One of the better ones that isn't so easly cracked is reCaptcha. Which I will be using in future projects.

A Bot doesn't really know what it's spamming usually so even these forms get spammed. Or in the Case of Blog Comments can be another common place to see a lot of spam. Their is other ways around it besides using a Captcha, Like for example preventing the submission of the form if it contains any characters like < or > The only downside to this, is for normal users that you may want to allow them more flexiable posting. So It comes down to what your project may need in that situation.

Since I primarily use CodeIgniter for many projects, their is a good wiki available for recaptcha, implementing this into almost any form is very simple. http://codeigniter.com/wiki/ReCAPTCHA/

]]>
Thu, 16 Sep 2010 09:19:19 -0700
It's only natural http://www.purdydesigns.com/en/news/comments/Its-only-natural http://www.purdydesigns.com/en/news/comments/Its-only-natural That Purdydesigns would one day see it's logo on a race car. It's no secret I have a passion for auto racing, and thanks to Wyatt Gooden Racing, racing in the Jetta TDI Cup series, Purdydesigns was able to get a logo on his race car.

The logo got some good ole fashion rubbin during the race as Wyatt had to work his way up from 3rd starting position to the lead, Wyatt went on to win on the most challenging track of the season as a rookie! and his second straight victory, also putting the rookie into the points lead with only 4 races to go.

If you would like to learn more about the Jetta TDI Cup series you can check out VW's website.

The TDI Series heads over to Road America for a double race event, each race being worth half the normal points. The championship is close, we wish Wyatt all the best in the final races.

]]>
Thu, 05 Aug 2010 12:07:28 -0700
PurdyDesigns Website Launch http://www.purdydesigns.com/en/news/comments/PurdyDesigns-Website-Launch http://www.purdydesigns.com/en/news/comments/PurdyDesigns-Website-Launch PurdyDesigns has launched it's website, on Christmas at that. Please take a look around, We will be updating the site with more content over the next month, We hope to not only provide a website development service but as well as point people to cool web development projects and tricks pertaining to web-site development.

I hope you have a Merry Christmas and a Happy New Year.

]]>
Fri, 25 Dec 2009 06:03:23 -0800