How JavaScript layer works in Agile Toolkit

Monday, April 26th, 2010|Beginner tips, Version 3|by Romans|1 Comment

Half year ago we have introduced jQuery / Chain into AModules3 (former name for Agile Toolkit). It allows us to clean up a lot of older code and at the same time give developers a way to do many new things in a flexible way.

Read more

Tags: , , ,

Ordering elements

Thursday, April 22nd, 2010|Beginner tips, Version 3|by Romans|3 Comments

In Agile Toolkit each object you add is inserted as a child to some other object. They end up in $object->elements array, however there is no easy way to rearrange it.

Read more

Tags: , ,

How to select elements in a grid?

Thursday, April 22nd, 2010|Beginner tips, Version 3|by Romans|5 Comments

Let’s say you want user to be able and select multiple elements in a grid. This can’t be done directly, because grid is supposed to list elements, it shouldn’t be built to intact with it. However grid can be extended and joined with the functionality of the Form to do what’s required.

You can see a working example here:

Read more

Tags: , ,

New Grid Column Types – "button" and "ask"

Thursday, April 22nd, 2010|Beginner tips, Version 3|by Romans|4 Comments

With the migration to jQuery (UI) we have received lot of new fancy functionality, but some of the old things stopped worked too. However old stuff is fixable, and if there is anything – please let me know by commenting and I’ll give it a fix.

This tip explains how you can add buttons to the grid. You can see working demo here:

Read more

Tags: ,

Introduction to dialog() integration.

Wednesday, April 21st, 2010|Beginner tips, Version 3|by Romans|2 Comments

jQuery UI have a good support for dialogs and windows. Agile Toolkit 4 takes it to the next level. Most importantly it manages to create contents of the boxes on the fly. Let’s review what we have.
Read more

Tags: ,

univ().ajaxify() method

Wednesday, April 21st, 2010|Beginner tips, Version 3|by Romans|

The other day I have added this method for skai, but it’s actually a very curious one.

Agile Toolkit 4 uses atk4_loader widget for AJAX requests. Syntax is very similar to jQuery:

  • jQuery: $(‘#div’).load(‘url’);
  • atk4:  $(‘#div’).atk4_load(‘url’);

Read more

Tags: ,

Error: $("#test_addbtn").button is not a function – solution

Monday, April 19th, 2010|Beginner tips, Version 3|by Romans|

If you are getting this problem, this is because button() is a part of jQuery UI 1.8. By default 1.7 is still used. Since 1.8 stable is being released we will switch over shortly, but for now here is the fix. Put this into your config.php to manually change version of jquery / jquery ui:

$config['js']['versions']['jquery']='1.4.2.min'; $config['js']['versions']['jqueryui']='1.8.custom.min';
Tags: ,

Future addButton() syntax – I need your suggestions

Monday, April 19th, 2010|Brainstorming, Version 3|by Romans|2 Comments

I’d like to hear your opinion about some suggestions towards button implementation

Currently there are 2 versions running around:

1) $form->addButton()->redirect(‘/’)  - in this one form’s addButton is returning $js(‘click’)->univ() of the button. This is backward compatible version and seriously, why would we need to do anything with button but redirect.

2) $form->addButton()->js(‘click’)->univ()->redirect(‘/’) – here addButton returns “View_Button” object. The benefit is that you can do certain things with is such as addLabel or setStyle(), which will affect how button looks. Also instead of just clicks you can use other events, such as mouse-over etc. This is more standard-compliant version IMHO

Read more

Tags: ,

New class: PathFinder

Saturday, April 17th, 2010|Core changes, Version 3|by Romans|

Several of current components are relying on their own implementation for file searching:

  • SMLite – template inclusion
  • class auto-load
  • javascript inclusion
  • page search

PathFinder is designed to be a system-wide controller which will take all those searches under control. It introduces concepts of Locations and resource types (such as ‘js’, ‘html’ for templates, ‘php’ etc)

Read more


New class URL and API::getDestinationURL()

Saturday, April 17th, 2010|Core changes, Version 3|by Romans|3 Comments

For a while now, many parts of library relied on function API::getDestinationURL($page). This function returns the valid URL which will point to specified page. However the implementation of this function was only working for absolute page names, and was built-in into API.

I am adding implementation which relies on a new class called URL. This class instance will be returned by getDestinationURL(). If you happen to pass this object to getDestinationURL again, it will not going to mess up the URL anymore.

Read more