Custom templates (global and per controller)

32 views
Skip to first unread message

Artyom M

unread,
Jan 15, 2015, 7:46:19 AM1/15/15
to koala-fra...@googlegroups.com
Niko,

Can I change view of koala-app by template? I want to create modern UI full responsive css3/html5/font-icon template for my app. Standard layout in <tables> depresses me...

Also how in KWF change template in controller? For example, I want to create test functionality... same as in oDesk. 
Please, see test.jpg.

What I want:
1. Time remaining per question
2. Random question from categories
3. Сalculation and display rating

How to provide this functionality in KWF?
test.JPG

Niko Sams

unread,
Jan 15, 2015, 3:07:08 PM1/15/15
to Koala Framework Dev
Can I change view of koala-app by template? I want to create modern UI full responsive css3/html5/font-icon template for my app. Standard layout in <tables> depresses me...
That's a complex question...

1. You can't easily change the look and feel of a extjs 2.3 base application. It's ExtJS and that's the way it looks.
There exist different themes for ext, but they basically just change colors.

2. You can create new, more modern application based on extjs 4 (see https://github.com/vivid-planet/kwf-app-demo/tree/ext4)
That looks much nicer and more modern than ext 2.3 but still it's extjs (which is good, but you can't change everything easily)
extjs 4 also supports icon fonts...

3. We are working on integrating extjs 5 which also supports responsive. still it's extjs.

4. Create your own markup, your own styles your own UI using a javascript framework (backbone, angular, ember, whatever):
our preferred framework is backbone and we have a template for a backbone based app.
- single page app
- you have much more control over the look and feel
- you have to implement the look and feel yourself

5. Create your own markup, your own styles your own UI using Koala Framework Components (Kwc)
- multi page app
- intended for static content websites
- dynamic (including javascript) contents is possible too

6. Use Zend_Controller
- multi page app
- everything possible

 
Also how in KWF change template in controller? For example, I want to create test functionality... same as in oDesk. 
Please, see test.jpg.

What I want:
1. Time remaining per question
2. Random question from categories
3. Сalculation and display rating

How to provide this functionality in KWF?
 
you could use method 4-6 from above.
If it can be JS only i would probalby use 4. with backbone.

Niko

Artyom M

unread,
Jan 16, 2015, 2:53:25 AM1/16/15
to koala-fra...@googlegroups.com
>There exist different themes for ext, but they basically just change colors.
Yes, I already saw...

>You can create new, more modern application based on extjs 4 (see https://github.com/vivid-planet/kwf-app-demo/tree/ext4)

Can't install =)

c:\OpenServer\domains\kwfapp>php bootstrap.php build
[ 1/3] building trl...... OK (2ms)
[ 2/3] building events... OK (387ms)
[ 3/3] building assets...
calculating dependencies...
 42% [#########------------] Admin js                                          e
xception 'Kwf_Exception' with message 'Can't resolve dependency: require ext.Sup
port' in C:\OpenServer\domains\kwfapp\vendor\koala-framework\kwf-extjs\Kwf\Ext\A
ssets\Provider.php:131
Stack trace:
#0 C:\OpenServer\domains\kwfapp\vendor\koala-framework\koala-framework\Kwf\Asset
s\ProviderList\Abstract.php(114): Kwf_Ext_Assets_Provider->getDependenciesForDep
endency(Object(Kwf_Ext_Assets_JsDependency))
#1 C:\OpenServer\domains\kwfapp\vendor\koala-framework\koala-framework\Kwf\Asset
s\ProviderList\Abstract.php(104): Kwf_Assets_ProviderList_Abstract->getDependenc
iesForDependency(Object(Kwf_Ext_Assets_JsDependency))
#2 C:\OpenServer\domains\kwfapp\vendor\koala-framework\koala-framework\Kwf\Asset
s\ProviderList\Abstract.php(86): Kwf_Assets_ProviderList_Abstract->_setDependenc
iesForDependency(Object(Kwf_Ext_Assets_JsDependency))
#3 C:\OpenServer\domains\kwfapp\vendor\koala-framework\kwf-extjs\Kwf\Ext\Assets\
Provider.php(191): Kwf_Assets_ProviderList_Abstract->findDependency('Ext4.util.D
elay...')
#4 C:\OpenServer\domains\kwfapp\vendor\koala-framework\koala-framework\Kwf\Asset
s\ProviderList\Abstract.php(114): Kwf_Ext_Assets_Provider->getDependenciesForDep
endency(Object(Kwf_Ext_Assets_JsDependency))
#5 C:\OpenServer\domains\kwfapp\vendor\koala-framework\koala-framework\Kwf\Asset
s\ProviderList\Abstract.php(104): Kwf_Assets_ProviderList_Abstract->getDependenc
iesForDependency(Object(Kwf_Ext_Assets_JsDependency))
#6 C:\OpenServer\domains\kwfapp\vendor\koala-framework\koala-framework\Kwf\Asset
s\ProviderList\Abstract.php(86): Kwf_Assets_ProviderList_Abstract->_setDependenc
iesForDependency(Object(Kwf_Ext_Assets_JsDependency))
#7 C:\OpenServer\domains\kwfapp\vendor\koala-framework\kwf-extjs\Kwf\Ext\Assets\
Provider.php(191): Kwf_Assets_ProviderList_Abstract->findDependency('Ext4.util.E
vent')
#8 C:\OpenServer\domains\kwfapp\vendor\koala-framework\koala-framework\Kwf\Asset
s\ProviderList\Abstract.php(114): Kwf_Ext_Assets_Provider->getDependenciesForDep
endency(Object(Kwf_Ext_Assets_JsDependency))
#9 C:\OpenServer\domains\kwfapp\vendor\koala-framework\koala-framework\Kwf\Asset
s\ProviderList\Abstract.php(104): Kwf_Assets_ProviderList_Abstract->getDependenc
iesForDependency(Object(Kwf_Ext_Assets_JsDependency))
#10 C:\OpenServer\domains\kwfapp\vendor\koala-framework\koala-framework\Kwf\Asse
ts\ProviderList\Abstract.php(86): Kwf_Assets_ProviderList_Abstract->_setDependen
ciesForDependency(Object(Kwf_Ext_Assets_JsDependency))
#11 C:\OpenServer\domains\kwfapp\vendor\koala-framework\kwf-extjs\Kwf\Ext\Assets
\Provider.php(191): Kwf_Assets_ProviderList_Abstract->findDependency('Ext4.app.E
ventD...')
#12 C:\OpenServer\domains\kwfapp\vendor\koala-framework\koala-framework\Kwf\Asse
ts\ProviderList\Abstract.php(114): Kwf_Ext_Assets_Provider->getDependenciesForDe
pendency(Object(Kwf_Ext_Assets_JsDependency))
#13 C:\OpenServer\domains\kwfapp\vendor\koala-framework\koala-framework\Kwf\Asse
ts\ProviderList\Abstract.php(104): Kwf_Assets_ProviderList_Abstract->getDependen
ciesForDependency(Object(Kwf_Ext_Assets_JsDependency))
#14 C:\OpenServer\domains\kwfapp\vendor\koala-framework\koala-framework\Kwf\Asse
ts\ProviderList\Abstract.php(86): Kwf_Assets_ProviderList_Abstract->_setDependen
ciesForDependency(Object(Kwf_Ext_Assets_JsDependency))
#15 C:\OpenServer\domains\kwfapp\vendor\koala-framework\kwf-extjs\Kwf\Ext\Assets
\Provider.php(191): Kwf_Assets_ProviderList_Abstract->findDependency('Ext4.app.d
omain...')
#16 C:\OpenServer\domains\kwfapp\vendor\koala-framework\koala-framework\Kwf\Asse
ts\ProviderList\Abstract.php(114): Kwf_Ext_Assets_Provider->getDependenciesForDe
pendency(Object(Kwf_Ext_Assets_JsDependency))
#17 C:\OpenServer\domains\kwfapp\vendor\koala-framework\koala-framework\Kwf\Asse
ts\ProviderList\Abstract.php(104): Kwf_Assets_ProviderList_Abstract->getDependen
ciesForDependency(Object(Kwf_Ext_Assets_JsDependency))
#18 C:\OpenServer\domains\kwfapp\vendor\koala-framework\koala-framework\Kwf\Asse
ts\ProviderList\Abstract.php(86): Kwf_Assets_ProviderList_Abstract->_setDependen
ciesForDependency(Object(Kwf_Ext_Assets_JsDependency))
#19 C:\OpenServer\domains\kwfapp\vendor\koala-framework\kwf-extjs\Kwf\Ext\Assets
\Provider.php(191): Kwf_Assets_ProviderList_Abstract->findDependency('Ext4.app.C
ontro...')
#20 C:\OpenServer\domains\kwfapp\vendor\koala-framework\koala-framework\Kwf\Asse
ts\ProviderList\Abstract.php(114): Kwf_Ext_Assets_Provider->getDependenciesForDe
pendency(Object(Kwf_Assets_Dependency_File_Js))
#21 C:\OpenServer\domains\kwfapp\vendor\koala-framework\koala-framework\Kwf\Asse
ts\ProviderList\Abstract.php(104): Kwf_Assets_ProviderList_Abstract->getDependen
ciesForDependency(Object(Kwf_Assets_Dependency_File_Js))
#22 C:\OpenServer\domains\kwfapp\vendor\koala-framework\koala-framework\Kwf\Asse
ts\ProviderList\Abstract.php(86): Kwf_Assets_ProviderList_Abstract->_setDependen
ciesForDependency(Object(Kwf_Assets_Dependency_File_Js))
#23 C:\OpenServer\domains\kwfapp\vendor\koala-framework\kwf-extjs\Kwf\Ext\Assets
\Provider.php(191): Kwf_Assets_ProviderList_Abstract->findDependency('Kwf.Ext4.A
pp.Ma...')
#24 C:\OpenServer\domains\kwfapp\vendor\koala-framework\koala-framework\Kwf\Asse
ts\ProviderList\Abstract.php(114): Kwf_Ext_Assets_Provider->getDependenciesForDe
pendency(Object(Kwf_Assets_Dependency_File_Js))
#25 C:\OpenServer\domains\kwfapp\vendor\koala-framework\koala-framework\Kwf\Asse
ts\ProviderList\Abstract.php(104): Kwf_Assets_ProviderList_Abstract->getDependen
ciesForDependency(Object(Kwf_Assets_Dependency_File_Js))
#26 C:\OpenServer\domains\kwfapp\vendor\koala-framework\koala-framework\Kwf\Asse
ts\ProviderList\Abstract.php(86): Kwf_Assets_ProviderList_Abstract->_setDependen
ciesForDependency(Object(Kwf_Assets_Dependency_File_Js))
#27 C:\OpenServer\domains\kwfapp\vendor\koala-framework\kwf-extjs\Kwf\Ext\Assets
\AclControllerProvider.php(11): Kwf_Assets_ProviderList_Abstract->findDependency
('App.controller....')
#28 C:\OpenServer\domains\kwfapp\vendor\koala-framework\koala-framework\Kwf\Asse
ts\ProviderList\Abstract.php(83): Kwf_Ext_Assets_AclControllerProvider->getDepen
dency('Ext4AclControll...')
#29 C:\OpenServer\domains\kwfapp\vendor\koala-framework\koala-framework\Kwf\Asse
ts\Provider\Ini.php(35): Kwf_Assets_ProviderList_Abstract->findDependency('Ext4A
clControll...')
#30 C:\OpenServer\domains\kwfapp\vendor\koala-framework\koala-framework\Kwf\Asse
ts\ProviderList\Abstract.php(83): Kwf_Assets_Provider_Ini->getDependency('AdminI
niDep')
#31 C:\OpenServer\domains\kwfapp\vendor\koala-framework\koala-framework\Kwf\Asse
ts\Provider\IniNoFiles.php(10): Kwf_Assets_ProviderList_Abstract->findDependency
('AdminIniDep')
#32 C:\OpenServer\domains\kwfapp\vendor\koala-framework\koala-framework\Kwf\Asse
ts\ProviderList\Abstract.php(83): Kwf_Assets_Provider_IniNoFiles->getDependency(
'Admin')
#33 C:\OpenServer\domains\kwfapp\vendor\koala-framework\koala-framework\Kwf\Asse
ts\Package.php(28): Kwf_Assets_ProviderList_Abstract->findDependency('Admin')
#34 C:\OpenServer\domains\kwfapp\vendor\koala-framework\koala-framework\Kwf\Asse
ts\Package.php(81): Kwf_Assets_Package->getDependency()
#35 C:\OpenServer\domains\kwfapp\vendor\koala-framework\koala-framework\Kwf\Asse
ts\Package.php(75): Kwf_Assets_Package->_getFilteredUniqueDependencies('text/jav
ascript')
#36 C:\OpenServer\domains\kwfapp\vendor\koala-framework\koala-framework\Kwf\Util
\Build\Types\Assets.php(136): Kwf_Assets_Package->getFilteredUniqueDependencies(
'text/javascript')
#37 C:\OpenServer\domains\kwfapp\vendor\koala-framework\koala-framework\Kwf\Util
\Build\Types\Abstract.php(15): Kwf_Util_Build_Types_Assets->_build(Array)
#38 C:\OpenServer\domains\kwfapp\vendor\koala-framework\koala-framework\Kwf\Util
\Build.php(97): Kwf_Util_Build_Types_Abstract->build(Array)
#39 C:\OpenServer\domains\kwfapp\vendor\koala-framework\koala-framework\Kwf\Cont
roller\Action\Cli\BuildController.php(35): Kwf_Util_Build->build(Array)
#40 C:\OpenServer\domains\kwfapp\vendor\koala-framework\koala-framework\Kwf\Cont
roller\Action.php(33): Kwf_Controller_Action_Cli_BuildController->indexAction()
#41 C:\OpenServer\domains\kwfapp\vendor\koala-framework\zendframework1\library\Z
end\Controller\Dispatcher\Standard.php(308): Kwf_Controller_Action->dispatch('in
dexAction')
#42 C:\OpenServer\domains\kwfapp\vendor\koala-framework\zendframework1\library\Z
end\Controller\Front.php(954): Zend_Controller_Dispatcher_Standard->dispatch(Obj
ect(Kwf_Controller_Request_Cli), Object(Kwf_Controller_Response_Http))
#43 C:\OpenServer\domains\kwfapp\vendor\koala-framework\koala-framework\Kwf\Cont
roller\Front.php(139): Zend_Controller_Front->dispatch(Object(Kwf_Controller_Req
uest_Cli), Object(Kwf_Controller_Response_Http))
#44 C:\OpenServer\domains\kwfapp\bootstrap.php(31): Kwf_Controller_Front->dispat
ch()
#45 {main} [ERROR] (3179ms)

In what stage is the transition to extjs4 in percents?

>3. We are working on integrating extjs 5 which also supports responsive. still it's extjs.
Good news... but still awaiting 4th KWF version.

>4. Create your own markup, your own styles your own UI using a javascript framework (backbone, angular, ember, whatever):
AngularJS is very popular now as I can see.... interesting. But can I use Angular with KWF or all will have to be rewritten to the new framework?

>our preferred framework is backbone and we have a template for a backbone based app.
Interesting... can I see?
And... why did you choose Backbone? not Angular or others...

>- single page app
>- you have much more control over the look and feel
>- you have to implement the look and feel yourself
It's all that I want =)
+responsivity
+templates system to controllers

>5. Create your own markup, your own styles your own UI using Koala Framework Components (Kwc)
Tell me more, please.... how this can be integrated in koala-app?

>6. Use Zend_Controller
How? Need more info :D

>If it can be JS only i would probalby use 4. with backbone.
PHP somewhere for PHPExcel and something other... is it possible with JS-frameworks?


Thanks for your good answer! =)

Niko Sams

unread,
Mar 12, 2015, 6:06:32 AM3/12/15
to Koala Framework Dev
On Fri, Jan 16, 2015 at 8:53 AM, Artyom M <psycho...@gmail.com> wrote:
>There exist different themes for ext, but they basically just change colors.
Yes, I already saw...

>You can create new, more modern application based on extjs 4 (see https://github.com/vivid-planet/kwf-app-demo/tree/ext4)

Can't install =)

c:\OpenServer\domains\kwfapp>php bootstrap.php build
[ 1/3] building trl...... OK (2ms)
[ 2/3] building events... OK (387ms)
[ 3/3] building assets...
calculating dependencies...
 42% [#########------------] Admin js                                          e
xception 'Kwf_Exception' with message 'Can't resolve dependency: require ext.Sup
port' in C:\OpenServer\domains\kwfapp\vendor\koala-framework\kwf-extjs\Kwf\Ext\A
ssets\Provider.php:131

Could you try that again? If it doesn't work for you can I will try it on windows.
 
In what stage is the transition to extjs4 in percents?
There is no transition in converting ext2 code to ext4 at the moment -  They are too different.
Currently you have the option to use ext2 *or* ext4 (when writing new code)

We *could* port AutoGrid/AutoForm to ext4 but don't have plans for that so far - the future is in ext4 + densajs + rest api - which we are using in production already.

 
>4. Create your own markup, your own styles your own UI using a javascript framework (backbone, angular, ember, whatever):
AngularJS is very popular now as I can see.... interesting. But can I use Angular with KWF or all will have to be rewritten to the new framework?
You can use Kwf on the server side (models, rest controllers etc) and angular on the client side.
 
>our preferred framework is backbone and we have a template for a backbone based app.
Interesting... can I see?
And... why did you choose Backbone? not Angular or others...
Because for us backbone fits better.
- much easier to learn
- great flexibility
- very stable and no changing api

If you have interest I can push a demo integrating backbone with kwf to github.

 
>- single page app
>- you have much more control over the look and feel
>- you have to implement the look and feel yourself
It's all that I want =)
+responsivity
+templates system to controllers

>5. Create your own markup, your own styles your own UI using Koala Framework Components (Kwc)
Tell me more, please.... how this can be integrated in koala-app?
If you want to create a javascript heavy web app I would not recommend using Kwc.
Kwc is a CMS for static content (that gets administrated in a backend)

 

>6. Use Zend_Controller
How? Need more info :D
well, that is standard zend_controller: http://framework.zend.com/manual/1.12/en/zend.controller.html
 

>If it can be JS only i would probalby use 4. with backbone.
PHP somewhere for PHPExcel and something other... is it possible with JS-frameworks?

Sure, you can create custom controllers on server side can call them from javascript.


Niko 

Artyom M

unread,
Mar 15, 2015, 8:49:10 PM3/15/15
to koala-fra...@googlegroups.com
>Could you try that again? If it doesn't work for you can I will try it on windows.
Sorry, it's old post. Now everything works fine.

>We *could* port AutoGrid/AutoForm to ext4 but don't have plans for that so far
It would be nice. 
For me the problem of migration to Ext4 is old Ext2-code (with autoform, autogrid) that doesn't work.

>the future is in ext4 + densajs + rest api - which we are using in production already.
What is 'densajs'? Nothing on google search except KWF repository.

>If you have interest I can push a demo integrating backbone with kwf to github.
Please =)



Niko Sams

unread,
Mar 19, 2015, 4:17:39 AM3/19/15
to Koala Framework Dev
>We *could* port AutoGrid/AutoForm to ext4 but don't have plans for that so far
It would be nice. 
For me the problem of migration to Ext4 is old Ext2-code (with autoform, autogrid) that doesn't work.
how do you mean that?
 

>the future is in ext4 + densajs + rest api - which we are using in production already.
What is 'densajs'? Nothing on google search except KWF repository.
A JavaScript library we created.
- based on extjs 4 + deftjs
- simplifies creating extjs applications
-> see ext4 branch in kwf-app-demo
 

>If you have interest I can push a demo integrating backbone with kwf to github.
Please =)
open the /people page and you'll have a hello world style backbone application.


Niko
Reply all
Reply to author
Forward
0 new messages