)]}'
{"horizon/templates/horizon/common/_workflow_step_update_members.html":[{"author":{"_account_id":9981,"name":"Doug Fish","email":"drfish@us.ibm.com","username":"doug-fish"},"change_message_id":"ae6056a3d77aed61447b178474e4b0e9215f73a5","unresolved":false,"context_lines":[{"line_number":40,"context_line":""},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"\u003cscript\u003e"},{"line_number":43,"context_line":"  if (typeof horizon.membership !\u003d\u003d \u0027undefined\u0027) {"},{"line_number":44,"context_line":"    horizon.membership.workflow_init($(\".workflow\"), \"{{ step.slug }}\", \"{{ step.get_id }}\");"},{"line_number":45,"context_line":"  } else {"},{"line_number":46,"context_line":"    addHorizonLoadEvent(function() {"}],"source_content_type":"text/html","patch_set":2,"id":"AAAAWH%2F%2F%2B%2BI%3D","line":43,"updated":"2014-03-12 14:56:56.000000000","message":"I see only 3 places where there are inline \u003cscript\u003e tags, and all 3 of them have the if (typeof $ !\u003d\u003d \u0027undefined\u0027) pattern.  I have (well, had) some concern this check is in place and you are removing it.  If for some reason $ hasn\u0027t been loaded the script is going to hit an error.\n\nThat being said my thinking has been clouded by working in environments where javascript is loaded dynamically, and the loading order is less determinate.  I don\u0027t think we have that here.  Everything is neatly built into one file that\u0027s loaded in the head.  Maybe the check for $ is a reflection of some previous code structure?  There really shouldn\u0027t be a case for $ to not be loaded.\n\nTL;DR: looks good to me.","commit_id":"20374f9abd3a0cfd6eaf5b2501d8d4453097fd54"},{"author":{"_account_id":9981,"name":"Doug Fish","email":"drfish@us.ibm.com","username":"doug-fish"},"change_message_id":"6b71645bc55bef5954d30704bc38d6b414a02bf7","unresolved":false,"context_lines":[{"line_number":40,"context_line":""},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"\u003cscript\u003e"},{"line_number":43,"context_line":"  if (typeof horizon.membership !\u003d\u003d \u0027undefined\u0027) {"},{"line_number":44,"context_line":"    horizon.membership.workflow_init($(\".workflow\"), \"{{ step.slug }}\", \"{{ step.get_id }}\");"},{"line_number":45,"context_line":"  } else {"},{"line_number":46,"context_line":"    addHorizonLoadEvent(function() {"}],"source_content_type":"text/html","patch_set":2,"id":"AAAAVn%2F%2B%2FdU%3D","line":43,"updated":"2014-03-10 20:35:41.000000000","message":"Why omit the check for \u0027$\u0027?  I\u0027m concerned this might open up a different code loading timing window.  I think\nif (typeof $ !\u003d\u003d \u0027undefined\u0027 \u0026\u0026 typeof horizon.membership !\u003d\u003d \u0027undefined\u0027) is safer.","commit_id":"20374f9abd3a0cfd6eaf5b2501d8d4453097fd54"},{"author":{"_account_id":4978,"name":"Julie Pichon","email":"jpichon@redhat.com","username":"jpichon"},"change_message_id":"ce88f216d29656980e3a387fdfef95ae7bf7a086","unresolved":false,"context_lines":[{"line_number":40,"context_line":""},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"\u003cscript\u003e"},{"line_number":43,"context_line":"  if (typeof horizon.membership !\u003d\u003d \u0027undefined\u0027) {"},{"line_number":44,"context_line":"    horizon.membership.workflow_init($(\".workflow\"), \"{{ step.slug }}\", \"{{ step.get_id }}\");"},{"line_number":45,"context_line":"  } else {"},{"line_number":46,"context_line":"    addHorizonLoadEvent(function() {"}],"source_content_type":"text/html","patch_set":2,"id":"AAAAVn%2F%2B5bk%3D","line":43,"in_reply_to":"AAAAVn%2F%2B%2FdU%3D","updated":"2014-03-12 11:59:29.000000000","message":"This matches the pattern we use in many places in /openstack_dashboard/, which tends to be checking that the object is available (although there are some inconsistencies). If we want to clean it up to increase the safety and make all the calls do both checks, I\u0027d rather see this happen in a separate bug fix.","commit_id":"20374f9abd3a0cfd6eaf5b2501d8d4453097fd54"},{"author":{"_account_id":4978,"name":"Julie Pichon","email":"jpichon@redhat.com","username":"jpichon"},"change_message_id":"d67bc5f8126ff859205bf89b3dd3578bb3808a85","unresolved":false,"context_lines":[{"line_number":40,"context_line":""},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"\u003cscript\u003e"},{"line_number":43,"context_line":"  if (typeof horizon.membership !\u003d\u003d \u0027undefined\u0027) {"},{"line_number":44,"context_line":"    horizon.membership.workflow_init($(\".workflow\"), \"{{ step.slug }}\", \"{{ step.get_id }}\");"},{"line_number":45,"context_line":"  } else {"},{"line_number":46,"context_line":"    addHorizonLoadEvent(function() {"}],"source_content_type":"text/html","patch_set":2,"id":"AAAAWH%2F%2F%2Bpo%3D","line":43,"in_reply_to":"AAAAWH%2F%2F%2B%2BI%3D","updated":"2014-03-12 15:29:48.000000000","message":"Perhaps grep for \"\u003cscript\" instead? The pattern is used often in the openstack_dashboard templates, e.g. \nhttps://github.com/openstack/horizon/blob/master/openstack_dashboard/dashboards/admin/users/templates/users/_update.html\nhttps://github.com/openstack/horizon/blob/master/openstack_dashboard/dashboards/project/access_and_security/templates/access_and_security/floating_ips/_allocate.html\n\nThere\u0027s been some shuffling around of files with the progressive move to Angular (in this case the problem was surfaced with the move in https://github.com/openstack/horizon/commit/2d591beff5 ).","commit_id":"20374f9abd3a0cfd6eaf5b2501d8d4453097fd54"}]}
