Agile Toolkit Weekend $1 sale

Friday, September 23rd, 2011|Beginner tips, Core changes, Misc, Version 4|by Romans|1 Comment

Agile Toolkit is Open for Business!

I am very pleased to announce that Agile Toolkit is finally ready to be used in your business applications. Not only the code-base, Learning guide and Documentation have matured over the last few months but we’ve got the resources to help you with your questions!

We are running $1.00 license sale. For just a single dollar you will get the following:

  • Developing a closed-source application with Agile Toolkit
  • Same business day email support
  • Instant-messaging support (skype, gtalk)
  • Your Code review, suggestions and hints
  • Missing a feature? Request it an we’ll make it!

Monday morning the per-domain price will be back to $130, so spend the weekend wisely and get a few licenses for yourself and make sure your friends are in it too.

Click it before it’s too late: http://agiletoolkit.org/commercial/store

Read more

Next Step in Web Development – UI Frameworks

Thursday, September 8th, 2011|Beginner tips, Brainstorming, Misc|by Romans|1 Comment

Over the decade now web developers had to constantly evolve and learn more and more skills. The basic knowledge of HTML and the server-side language (such as PHP) is no longer sufficient. Expectations for web applications grow and Web Developers need to know CSS, HTML5, JavaScript, SQL as wall as many other libraries and frameworks – jQuery, CSS Frameworks, PHP Frameworks.

How do we turn it over and make things easier? Answer is — PHP UI Framework.

Read more

Agile Toolkit for CodeIgniter developer

Wednesday, August 31st, 2011|Beginner tips, Brainstorming, Version 4|by Romans|4 Comments

Welcome to the series of posts which helps you understand Agile Toolkit if you are coming from one of the other PHP Frameworks.

This post focuses on developers who are already familiar with CI (Code Igniter) and are willing to try Agile Toolkit.

Read more

Learning Agile Toolkit – the Book

Monday, August 15th, 2011|Beginner tips, Core changes, Version 4|by Romans|2 Comments

More and more pages are being added into a “Learning Agile Toolkit” book. The section explaining the fundamentals of Agile Toolkit is mostly complete:

http://new.agiletoolkit.org/learn/understand

The most recent addition was JavaScript chains section and Models section.

Learn how to use Object Oriented Programming in PHP

Sunday, July 3rd, 2011|Beginner tips, Misc|by Romans|

Whenever I come over object-oriented tutorial or a book, it always uses either Java or C++. I have never found this a big problem, but there are many people out there, who are NOT familiar with those languages and can never find a good tutorial to Object Oriented Programming.

Another problem is that PHP has no built-in interface with the user. You need to generate HTML and it’s not easy to do so, that’s why it makes any object-oriented examples useless or silly.

I want to give you the PROPER example of a good object-oriented paradigms in PHP language. At the end I will explain how this Geometrical universe can be used for Web Software programming:

Read more

Sending Email from PHP using Templates

Monday, May 2nd, 2011|Beginner tips, Version 4|by Romans|3 Comments

Agile Toolkit bundles a powerful emailing class. However instead of focusing on adding SMTP support and related features (which are rarely used in live environment anyway) this class focuses on use of Mail Templates and simplifying email sending in general.

[php]
$mail=$this->add(‘TMail’);
$mail->loadTemplate(‘test-mail’);
$mail->setTag(‘name’,'John’);
$mail->setTag(‘product’,'VAC-293′);
$mail->setTag(‘link’,$this->api
->getDestinationURL(‘./register’,array(‘code’=>’123′))
    ->useAbsoluteURL());
$mail->send($email);
[/php]

See this code in action:

http://codepad.agiletoolkit.org/tmail

AJAX Web Form for Adding Multiple Records to MVC Database

Saturday, April 30th, 2011|Beginner tips, Version 4|by Romans|2 Comments

Some time ago a PHP developer asked me – “How to add 50 employees though a single page”. Building a fluid data-entry web form which would allow adding unlimited records to the database without making user wait is not an easy task and normally require knowledge of JavaScript, AJAX, jQuery, PHP, HTML and CSS.

This blog post describes a simpler way to implement this complex task. I will be taking advantage of a Simple PHP UI Framework — Agile Toolkit. This will help me focus on the UI logic of the form instead of technical implementation and get job done within a very short time and little effort.

I set a number of goals in front of me, which are impossible to achieve with plain PHP or even with others, more complex frameworks. This example also helps to illustrate approach of Agile Toolkit in building Web UI, creating re-usable code and using AJAX. My goals are:

  • Code must be no longer than 50 lines of code, no custom HTML or JavaScript;
  • Must look very simple to read and understand;
  • User can continue entering data without stopping using Tab key and keyboard only;
  • Data must be submitted and saved automatically;
  • Must work with any Model therefore can be used for purpose of adding any type of record;
  • Must never reload page or make user wait. Should work even on slow internet connection;
  • Resulting code must be re-usable and customizable.

Agile Toolkit was a great help. I successfully completed all the requirements and produced a clean data entry screen. In fact, the solution works so great that I turned it into official add-on. Any user of Agile Toolkit can take advantage of this add-on by writing:

[php]
$this->add(‘InfiniteAddForm’)->setModel(‘Employee’);
[/php]

To find out more and download Agile Toolkit for free, open-source version, visit http://agiletoolkit.org. If you are curious about how I solved this task, continue to read this article.

Read more

Adding Twitter button to AJAX page

Monday, April 18th, 2011|Beginner tips, Version 4|by Romans|1 Comment

Twitter button is simple to add if you follow official guide. The code produced by the guide would contain a regular link and a JavaScript include. Executing the code would make the button look cool. Here is a sample code:

<a href="http://twitter.com/share" data-count="vertical" data-via="atk4">Tweet</a>
<script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script>

Unfortunately this code wouldn’t work if you will try to put it on the AJAX page. AJAX will not allow you to include script from a different domain name for security reasons.

A common way to get around this restriction is to place file locally. However, twitter may decide to change the file, and we will end up with outdated copy. We need to build a proxy instead.

In terms of Agile Toolkit, the proxy would be implemented as a class, which you add to the page. The syntax of such a class would be as straightforward as this:

[php]

$this->add(‘Controller_JSProxy’)
->proxy(‘http://platform.twitter.com/widgets.js’);

[/php]

This adds include to the current page from the specified URL. Below is the implementation of the proxy controller.

[php]

class Controller_JSProxy extends AbstractController {
function proxy($url){
$this->owner->js(true,’$.atk4.includeJS("’.
$this->api->getDestinationURL(
null,array($this->name=>1)).’");’);
if(isset($_GET[$this->name])){
readfile($url);
exit;
}
}
}
[/php]

PHP5 Forms with AJAX submit – best practices

Tuesday, April 5th, 2011|Beginner tips, Brainstorming, Version 3, Version 4|by Romans|

Forms are the foundation of interactive web and what we call Web 2.0. In this article I will walk through the possible problems web developers encounter when creating web forms and solutions to those problems.

This article will be useful to people who are starting web development or who are experienced at it.

This article refers to Form implementation in Agile Toolkit. For documentation and demonstrations of forms in Agile Toolkit see http://agiletoolkit.org/doc/form

Read more

Tags: , , , , ,

Google-friendly AJAX popups

Saturday, March 19th, 2011|Beginner tips|by Romans|1 Comment

For web developers it is always a big choice, whether to use a regular links or load data through AJAX. Regular links are boring and old, but AJAX is not supported by Google and other crawlers.

The solution is to have a regular link pointing to the page, but also add JavaScript on that link which will cancel default action and will load page dynamically.

This is exactly how we decided to implement 3 pages on www.agiletoolkit.org:

  • download page (integrates with twitter and starts download automatically)
  • newsletter page (integrates with Campaign Monitor)
  • contact page (integrates with Database and Email Sender)

Read more

Tags: