Posted by & filed under PHP Development.

Through our years of programming, we have optimized and re-optimized our code in attempt to make things easier for us, and to reduce redundant code.

During our endeavours, we implemented an abstract class containing a function that returns a new object instance:

abstract class i_object {
    final public static function i() {
        return count(func_get_args()) ? call_user_func_array(array(new static, '__construct'), func_get_args()) : new static;
    }
}

You can then create your business logic class like this:

class user extends i_object {
    public $id;
    function __construct($id = null, $populate = false) {
        $this->id = $id;
        if ($populate)
            $this->populate();
        return $this; // * important
    }
    function populate() {
        // populate from db
    }
}

Then, when you want to create a new “user” object:

$user = user::i($id, true);

We check for arguments in i_object::i(), so the object is then instantiated with those same params.

* It is imperative that you return $this; in the __construct function of the class extending the abstract class.  If omitted, nothing will be returned when calling ::i().

Posted by & filed under Hosting, News & Updates.

Please note that access via FTP is no longer permitted, as at March 7th, 2017 @ 12:01am EST.

The following describes how to configure SFTP access for a cPanel user.

Aside from logging into cPanel and using the File Manager tool to manage your website files, you can also connect via SFTP, not to be confused with shell access, which is prohibited.

Create your SSH Keys

You will first need to setup your SSH Keys:

  • While logged into cPanel, click on “SSH Access” under the “Security” section, then click on “Manage SSH Keys”:
  • If you do not have any Private Keys setup, click on “Generate a New Key”.
    • You may keep the Key Name as “id_rsa”, or change it to something more specific.
    • You will be asked for a Key Password, which is optional but highly recommended.  You will need this password each time you use the key.
    • Key Type: RSA
    • Key Size: 4096
    • Click “Generate Key”.
  • From the “SSH Access” page, click “Manage” beside your new key, listed under “Public Keys”:
    • The “Authorization Status” should be listed as “not authorized”.
    • Click “Authorize” to permit access using this key.
  • From the “SSH Access” page, click “View/Download” beside your key in the list of “Private Keys”:
    • Scroll down to the bottom of this page to where it says “Convert the … key to PPK format”.
      • If you supplied a password during creation of this key, enter it here.
    • Click “Convert”.
    • Then scroll down to the bottom of the page, and click “Download” to download the “.ppk” Private Key file.
    • DO NOT share your Private Key with anyone.

Configure your Connection

In FileZilla, setup your connection as follows:

  • Host: hosting.iaps.ca
  • Protocol: SFTP – SSH File Transfer Protocol
  • Logon Type: Key file
  • User: your cPanel username
  • Key file: the “.ppk” key-file you downloaded from cPanel.
  • Example:

Once you click connect, you will be prompted for the key password you set while generating the SSH Key.

That’s it!  Your connection and transfers are now secure.

Posted by & filed under formdo.com, Hosting, PHP Development, WordPress.

Hosting
This year we will be upgrading our hosting services by more than doubling speed, ram and space, which is expected to occur early March.

formDO
We will be releasing our flagship project, formDO, late April!

flokah (ubudget)
We have some really awesome updates prepared for this project, which will be released shortly after the launch of formDO; most likely sometime in May or June.

Clothing/Apparel
We are now selling light-weight, polyester hoodies for CAD$35, available in 2 colours (dark grey, beige), and 5 sizes (S, M, Lg, XL, XXL). All hoodies come with a pressed “iaps” logo, placed over the heart. For more information, please contact us. We plan on setting up a shop page for our apparel in early Spring, which is when we plan on introducing collared golf shirts into our product line.

Blankslate/Patternfly WordPress Theme
As per our post in October of last year, WordPress PatternFly (Bootstrap) Theme, we will be applying this theme to our own website, and also releasing it to the public via https://en-ca.wordpress.org/themes/. This should be done by August, along with a client login panel with further integrated support tickets, and access to invoice history.

Summer
This summer will commence our first application and integration of formDO into a small farming business, located just outside London, Ontario.

Posted by & filed under PHP Development, WordPress.

Over the past few months, we have been working with PatternFly, which is built on Bootstrap, to provide an enterprise look and feel to our data management applications. To our surprise, or not, we found zero (0) WordPress themes supporting PatternFly. While utilizing the open source WordPress theme Blankslate, we have put together a nice little WordPress PatternFly theme. You can see it in action at www.carwrapquotes.com.

We plan on publicly releasing this theme, once we tighten everything up, but for now, if you would like a copy to use or play around with, please let us know. This theme-package comes complete with a child theme for you to provide overrides. We also recommend using the following plugins, in order of most important to least important, although not required:

  • Theme My Login – Template overrides have been provided within the packaged parent theme. You may further override these templates by copying them, from TML itself or from the parent theme, to your child theme.
  • Wordfence Security – Security is always a good idea! This should actually be listed first, but it’s not.
  • Debug Print R – Because debugging is sometimes necessary, and this makes debugging easier to read.
  • Nav Menu Roles – Easily set a nav menu item to only display based on logged in status and role.
  • Slim Stat Analytics – To accompany your Google Analytics.
  • Widget Logic – Great way to limit widget visibility.

Posted by & filed under Notices & Alerts.

We highly encourage everyone to use passwords with at least 9 characters, containing uppercase and lowercase letters, numbers, and, if permitted, special characters.

We have created the following form to help you generate strong passwords for online accounts. Also keep in mind that if you ever lose a password, you can easily reset your password using the “Forgot Password?” form found on most websites. It’s better to lose a strong password and reset it, than to use a weak password and have your account hacked!


:[+t@%mn-{F!iYxr


Posted by & filed under flokah.com, News & Updates, PHP Development.

flokah-lg

The flokah project (located at flokah.com) has gone through 3 stages of development.

The first was more than 10 years ago, when we first started creating invoices. The system was very simple back then, having only the ability to create clients and invoices. It was called cConsole; “Client” Console.

At that time, Simply Accounting cost about $80, and we didn’t want to spend money when we could just create our own system, with consideration to the fact that we didn’t need anything close to the number of features a full accounting system would provide.

Then, in December of 2011, we converted the simple cConsole system, which was built on our own framework (of which we tried to release as a development platform) into what we called ubudget. The ubudget name was actually taken from a friend, more like an acquaintance, that wanted to create a budgeting system. We felt they wouldn’t go through with the development, so we took it upon ourselves, or at least the name.

Unfortunately, the name never really fit the product, and ubudget -the client/project/invoicing system-, even though released at ubudget.ca, never really gained traction. This was also due to our lack of advertisement. We had a website, told a few friends, but none of our friends had huge email listings for people at Harvard…

Regardless of its’ mainstream popularity, of lack thereof, we’ve been using ubudget every single day to manage our company. And over the past 5 years we added features and changes that we needed for expansion, and to ensure we stayed organized. With ubudget you could create project tasks, documents, kanban board, track expenses, create a budget, generate income reports, track recurring services, point-of-sale, worklogs, and import csv data. All changes were promoted to ubudget.ca and accessible to everyone, for free!

All of that was well and good, but it was missing something. And it wasn’t until we decided to get rid of our custom UI, replacing it with Bootstrap about 2 months ago, that we realized just how much could be accomplished by adding in 1 small feature: a dashboard! The dashboard is where you can see a snapshot of your projects, tasks, upcoming billings, yearly income, and also provides a way to quickly create invoices in just a few clicks.

One of our earliest suggestions for ubudget was to have the ability to create invoices in bulk, and send out all the email notifications in one shot. However, as good of an idea as this is, it has not been fully implemented. But, with the addition of the dashboard, invoice creation takes less than 1/4 of the time as it used to. The addition of a mature dashboard was a huge time-saver and we are very happy that we finally managed to streamline invoicing.

So, with new functionality, a new UI, stronger security, and complete user isolation, we are proud to present flokah, ubudget’s predecessor.

We set a go-live date of June 15th, 2016…and as it turns out, it will be released on time! 🙂

Posted by & filed under flokah.com, News & Updates, ubudget.ca.

Over the past few months, we have been hard at work at client-offices, and on multiple client projects.

We finally had a chance to revisit ubudget.ca, as that project has not been touched in over 2 years. Not only has the look and feel changed, but the name as well. “ubudget” falls short when defining what it actually is. However, “flokah” seems to fit a lot better and we will stick with that name for now. We also managed to scoop up the .com, so within the very near future, flokah.com will be running the new version of ubudget. Each user will be notified, then migrated, and notified once more upon completion.

Journal Imports and our new Client Portal won’t be available for use within flokah until August.

Our Point of Sale system (aberdat.com) is on the back-burner until we finish our current project, “actpath”. actpath is our CMS builder, and it’s awesome, and we can’t tell you more than that.

Lots of good things to come, always!

Posted by & filed under Hosting, News & Updates.

First off, we would like to wish all of our present and future clients a very Merry Christmas and Happy New Year!

In 2016, our focus will shift slightly towards our Hosting and Search Engine Optimization (SEO) services.  With this in mind, we have revamped our hosting options and reassessed our plan pricing, which is also due to our US-based services and how our Canadian Dollar matches up.  Our new hosting plans include options for a more rounded, managed solution, including WordPress updates, SEO monthly reporting, and additional costs associated to dedicated IP addresses due to IPv4 limitations.

We will be reaching out to our clients over the next few weeks to inform them of our new services, and the benefits they will provide to the future of their companies.  Our full-service SEO campaigns, coupled with weekly and monthly reporting, will provide you with a better understanding of where your website sits in terms of search rankings, why it ranks at its’ current level, and how this can be improved.  As always, content is key, and we are more than willing to aid in increasing your search rankings, and in turn increasing your impressions and sales.

A quick note on WordPress, the open source web-blogging and website platform:  Because so many sites use this platform, and due to its availability to the public, more and more WordPress websites are getting hacked due to exploits from lack of maintenance and security.  Our hosting services will now include advantageous security options to ensure your property is kept safe.

We look forward to this new year of focused dedication to our clients, their companies and their needs, while staying competitive in the web development, marketing, advertising, and hosting fields.  With over 20 years of experience, we are here to help drive your company to the top; of both your search rankings and areas of expertise.

Posted by & filed under Games.

If you have had any issues streaming from twitch.tv, here are a few steps to take as a workaround:

  1. Download and install VLC Media Player from: http://www.videolan.org/vlc/index.html
  2. Download and install Livestreamer from: http://docs.livestreamer.io/install.html#windows-binaries (click on the Installer link)
  3. Then click on START (then run in pre-Windows 7), then type in: cmd
  4. A command prompt (usually a black window) will load.  In this window, type the following then press ENTER:
    livestreamer http://www.twitch.tv/user best
    The above command loads “livestreamer”, connects to “http://www.twitch.tv/user” (where “user” is replaced with the actual user-name), and at the “best” quality.  (To copy+paste to this command-prompt window, right-click the window and click “paste”.)  Once a connection is established, the stream opens up in VLC Player.

Furthermore, if you are still having some buffering issues you may want to add an extra parameter to the command so you utilize more download threads: –hls-segment-threads # (where # is a number between 1 and 10; the default is 1).  The following is an example of this extended command, along with a prompt for the URL (we recommend saving this to a .bat file, such as twitch.bat, so you can simply open it from your desktop and copy+paste the URL):

@echo off
set /p url=”Stream from URL: ”
start livestreamer –hls-segment-threads 4 %url% best

The script prompts you for the full URL of the stream.  However, you may alter this so you only have to enter the user-name portion by changing: %url% to: http://www.twitch.tv/%url%

Posted by & filed under flokah.com, Hosting, News & Updates, Notices & Alerts, ubudget.ca, uteach.ca.

We completed a huge software update yesterday, starting at 5pm and completing at 2am EST. This update provided an updated cPanel, and newer versions of MySQL, PHP and Apache, while also providing the Apache module DEFLATE. DEFLATE allows you to compress output which decreases load times for your users! If you would like DEFLATE utilized on your site, please contact us.

SCHEDULED DOWNTIME TONIGHT
Please note that your hosting service may be unavailable tonight between 12am and 1am, due to a hardware upgrade to double the RAM of the system. We have been nearing capacity recently, and with the addition of DEFLATE we will need the extra memory. This should also help with cPanel load times.

We apologize for any inconvenience this may cause and appreciate your patience during our server updates and upgrades.