I just found fix for this particular case - single quote

(script( $aiki->Foo->pass_throu('((form_array))'); )script)

but this will not work if users data contan both single and double
quote.

This can be fix by first running Extension code and if one of parameter
is ((field)) then it will replace it with the value from database query.

-- 
You received this bug notification because you are a member of Aiki
Framework Developers, which is subscribed to aikiframework.
https://bugs.launchpad.net/bugs/916161

Title:
  Aiki extensions should alow to pass everything from database as
  argument

Status in Aiki Framework:
  Confirmed

Bug description:
  Aiki substitution instead of parsing approach sux. You can pull
  serialized arrays (like forms) from database into extension.

  if you have this SQL:

  SELECT form_array FROM aiki_forms WHERE id = 6

  (on my installation it's form for aiki_forms)

  if you have extension like this

  Class Foo {
           function pass_throu($array) {
                  return $array;
           }
  }

  and in widget you have

  ((form_array))
  ---------------
  (script( $aiki->Foo->pass_throu("((form_array))"); 
)script)​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​

  the reponse will be

  
a:11:{s:9:"tablename";s:10:"aiki_forms";s:4:"pkey";s:2:"id";s:10:"textinput1";s:23:"app_id|SystemGOD:app
 id";s:10:"textinput2";s:33:"form_method|SystemGOD:form 
method";s:10:"textinput3";s:33:"form_action|SystemGOD:form 
action";s:10:"textinput4";s:27:"form_dir|SystemGOD:form 
dir";s:10:"textinput5";s:31:"form_table|SystemGOD:form 
table";s:10:"textinput6";s:29:"form_name|SystemGOD:form 
name";s:10:"textblock7";s:31:"form_array|SystemGOD:form 
array";s:10:"textblock8";s:29:"form_html|SystemGOD:form 
html";s:10:"textblock9";s:31:"form_query|SystemGOD:form query";}
  ---------------
  a:11:{s:9:

  the reason is that aiki first insert filed into text and that call
  mtoken

  so you will have this:
  (script( $aiki->Foo->pass_throu("a:11:{s:9:"......

  and AIki put it as first argument (We need real parser badly)

To manage notifications about this bug go to:
https://bugs.launchpad.net/aikiframework/+bug/916161/+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

Reply via email to