Public bug reported:
Right now implementation of widget is a mess (there is no separation
between "parsing" code and widget creation code), it's hard to read and
follow. It's a file widget.php but it contain class CreateLayout. There
should be class widget that will actually allow users to interact with
widgets system. CreateLayout class have public methods but I don't think
that they can be used in user level code.
If we have new parser the whole widget.php should be rewritten, the
logic for the creating widgets should be extracted, rewritten using new
parser and also put into smaller functions that will be easier to read.
And also there should be 1:1 relationship between API functions and
AikiMarkup, for instance if there is markup "(sql(" or "(if(" (using
proposed syntax) it should call one public method and users should be
able to overwrite those methods so they will be able to change the
logic, if our "(sql(" will not alow to execute "INSERT" (BTW: it should)
users will be able to orwrite this on function and use "INSERT" if they
want.
** Affects: aikiframework
Importance: Critical
Status: New
** Description changed:
Right now implementation of widget is a mess, it's hard to read and
follow. It's a file widget.php but it contain class CreateLayout. There
should be class widget that will actually allow users to interact with
widgets system. CreateLayout class have public methods but I don't think
that they can be used in user level code.
If we have new parser the whole widet.php should be rewritten, the logic
- of the creating widgets should be extracted, rewritten using new parser
+ for the creating widgets should be extracted, rewritten using new parser
and also putten into smaller functions that will be easier to read.
And also there should be 1:1 relationship between API functions and
AikiMarkup, for instance if there is markup "(sql(" or "(if(" (using
proposed syntax) it should call one public method and users should be
able to overwrite those methods so they will be able to change the
logic, if our "(sql(" will not alow to execute "INSERT" (BTW: it should)
users will be able to orwrite this on function and use "INSERT" if they
want.
** Description changed:
- Right now implementation of widget is a mess, it's hard to read and
+ Right now implementation of widget is a mess (there is no separation
+ between "parsing" code and widget creation code), it's hard to read and
follow. It's a file widget.php but it contain class CreateLayout. There
should be class widget that will actually allow users to interact with
widgets system. CreateLayout class have public methods but I don't think
that they can be used in user level code.
If we have new parser the whole widet.php should be rewritten, the logic
for the creating widgets should be extracted, rewritten using new parser
and also putten into smaller functions that will be easier to read.
And also there should be 1:1 relationship between API functions and
AikiMarkup, for instance if there is markup "(sql(" or "(if(" (using
proposed syntax) it should call one public method and users should be
able to overwrite those methods so they will be able to change the
logic, if our "(sql(" will not alow to execute "INSERT" (BTW: it should)
users will be able to orwrite this on function and use "INSERT" if they
want.
** Description changed:
Right now implementation of widget is a mess (there is no separation
between "parsing" code and widget creation code), it's hard to read and
follow. It's a file widget.php but it contain class CreateLayout. There
should be class widget that will actually allow users to interact with
widgets system. CreateLayout class have public methods but I don't think
that they can be used in user level code.
- If we have new parser the whole widet.php should be rewritten, the logic
- for the creating widgets should be extracted, rewritten using new parser
- and also putten into smaller functions that will be easier to read.
+ If we have new parser the whole widget.php should be rewritten, the
+ logic for the creating widgets should be extracted, rewritten using new
+ parser and also put into smaller functions that will be easier to read.
And also there should be 1:1 relationship between API functions and
AikiMarkup, for instance if there is markup "(sql(" or "(if(" (using
proposed syntax) it should call one public method and users should be
able to overwrite those methods so they will be able to change the
logic, if our "(sql(" will not alow to execute "INSERT" (BTW: it should)
users will be able to orwrite this on function and use "INSERT" if they
want.
** Changed in: aikiframework
Importance: Undecided => Critical
--
You received this bug notification because you are a member of Aiki
Framework Developers, which is subscribed to aikiframework.
https://bugs.launchpad.net/bugs/928279
Title:
We need API for widgets
Status in Aiki Framework:
New
Bug description:
Right now implementation of widget is a mess (there is no separation
between "parsing" code and widget creation code), it's hard to read
and follow. It's a file widget.php but it contain class CreateLayout.
There should be class widget that will actually allow users to
interact with widgets system. CreateLayout class have public methods
but I don't think that they can be used in user level code.
If we have new parser the whole widget.php should be rewritten, the
logic for the creating widgets should be extracted, rewritten using
new parser and also put into smaller functions that will be easier to
read.
And also there should be 1:1 relationship between API functions and
AikiMarkup, for instance if there is markup "(sql(" or "(if(" (using
proposed syntax) it should call one public method and users should be
able to overwrite those methods so they will be able to change the
logic, if our "(sql(" will not alow to execute "INSERT" (BTW: it
should) users will be able to orwrite this on function and use
"INSERT" if they want.
To manage notifications about this bug go to:
https://bugs.launchpad.net/aikiframework/+bug/928279/+subscriptions
_______________________________________________
Mailing list: https://launchpad.net/~aikiframework-devel
Post to : [email protected]
Unsubscribe : https://launchpad.net/~aikiframework-devel
More help : https://help.launchpad.net/ListHelp