{"action":"created","issue":{"url":"https://api.github.com/repos/qcubed/framework/issues/602","labels_url":"https://api.github.com/repos/qcubed/framework/issues/602/labels{/name}","comments_url":"https://api.github.com/repos/qcubed/framework/issues/602/comments","events_url":"https://api.github.com/repos/qcubed/framework/issues/602/events","html_url":"https://github.com/qcubed/framework/issues/602","id":57428944,"number":602,"title":"Remove 'eval' from qcubed.js","user":{"login":"olegabr","id":2850808,"avatar_url":"https://avatars.githubusercontent.com/u/2850808?v=3","gravatar_id":"","url":"https://api.github.com/users/olegabr","html_url":"https://github.com/olegabr","followers_url":"https://api.github.com/users/olegabr/followers","following_url":"https://api.github.com/users/olegabr/following{/other_user}","gists_url":"https://api.github.com/users/olegabr/gists{/gist_id}","starred_url":"https://api.github.com/users/olegabr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/olegabr/subscriptions","organizations_url":"https://api.github.com/users/olegabr/orgs","repos_url":"https://api.github.com/users/olegabr/repos","events_url":"https://api.github.com/users/olegabr/events{/privacy}","received_events_url":"https://api.github.com/users/olegabr/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/qcubed/framework/labels/feature%20request","name":"feature request","color":"84b6eb"}],"state":"open","locked":false,"assignee":null,"milestone":{"url":"https://api.github.com/repos/qcubed/framework/milestones/5","labels_url":"https://api.github.com/repos/qcubed/framework/milestones/5/labels","id":247832,"number":5,"title":"3.0 Release","description":"Major infrastructure changes:\r\n1. php 5.3.2+ (for composer)\r\n2. directory restructuring (to simplify the contribution to the qcubed)\r\n3. composer for all dependencies and for qcubed itself","creator":{"login":"olegabr","id":2850808,"avatar_url":"https://avatars.githubusercontent.com/u/2850808?v=3","gravatar_id":"","url":"https://api.github.com/users/olegabr","html_url":"https://github.com/olegabr","followers_url":"https://api.github.com/users/olegabr/followers","following_url":"https://api.github.com/users/olegabr/following{/other_user}","gists_url":"https://api.github.com/users/olegabr/gists{/gist_id}","starred_url":"https://api.github.com/users/olegabr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/olegabr/subscriptions","organizations_url":"https://api.github.com/users/olegabr/orgs","repos_url":"https://api.github.com/users/olegabr/repos","events_url":"https://api.github.com/users/olegabr/events{/privacy}","received_events_url":"https://api.github.com/users/olegabr/received_events","type":"User","site_admin":false},"open_issues":8,"closed_issues":32,"state":"open","created_at":"2013-01-20T08:31:38Z","updated_at":"2015-02-23T03:33:33Z","due_on":"2013-12-31T08:00:00Z","closed_at":null},"comments":3,"created_at":"2015-02-12T08:02:48Z","updated_at":"2015-02-23T03:37:30Z","closed_at":null,"body":"@spekary \r\n1. There is an 'eval' in qcubed.js with a todo note to try to remove it. I needed to do some changes to how javascript code was executed, and it kind of ballooned from there. I am now working on infrastructure to be able to execute most of the javascript in qcubed without going through the eval. I don't intend to take out the eval yet, but just have the architecture there so that developers would only need it rarely. As part of this, I need to refactor the spaghetti in RenderEnd and RenderAjax to make it easier to understand and build on in the future.\r\n"},"comment":{"url":"https://api.github.com/repos/qcubed/framework/issues/comments/75485566","html_url":"https://github.com/qcubed/framework/issues/602#issuecomment-75485566","issue_url":"https://api.github.com/repos/qcubed/framework/issues/602","id":75485566,"user":{"login":"spekary","id":755757,"avatar_url":"https://avatars.githubusercontent.com/u/755757?v=3","gravatar_id":"","url":"https://api.github.com/users/spekary","html_url":"https://github.com/spekary","followers_url":"https://api.github.com/users/spekary/followers","following_url":"https://api.github.com/users/spekary/following{/other_user}","gists_url":"https://api.github.com/users/spekary/gists{/gist_id}","starred_url":"https://api.github.com/users/spekary/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/spekary/subscriptions","organizations_url":"https://api.github.com/users/spekary/orgs","repos_url":"https://api.github.com/users/spekary/repos","events_url":"https://api.github.com/users/spekary/events{/privacy}","received_events_url":"https://api.github.com/users/spekary/received_events","type":"User","site_admin":false},"created_at":"2015-02-23T03:37:30Z","updated_at":"2015-02-23T03:37:30Z","body":"I have done as much as I can do with v3 on this. The rest will be left for the future, but the infrastructure is there to do this in GetEndScript calls and call to ExecuteJavaScript. You can use either ExecuteSelectorFunction or ExecuteJsFunction. If either of these are not enough, then I recommend you move that code to qcubed.js or some other included js file, and then use one of the above two functions to call that code."}}