)]}'
{"horizon/static/horizon/js/horizon.forms.js":[{"author":{"_account_id":8040,"name":"Timur Sufiev","email":"tsufiev@gmail.com","username":"tsufiev"},"change_message_id":"9edc19f804b81d20cac5c7d26c69b18b89102a66","unresolved":false,"context_lines":[{"line_number":239,"context_line":"  $el.find(\"#create_image_form input#id_copy_from\").attr(\"placeholder\", \"http://example.com/image.iso\");"},{"line_number":240,"context_line":"};"},{"line_number":241,"context_line":""},{"line_number":242,"context_line":"horizon.forms.themable_select \u003d function () {"},{"line_number":243,"context_line":"  \"use strict\";"},{"line_number":244,"context_line":""},{"line_number":245,"context_line":"  // Update the select value if dropdown value changes"}],"source_content_type":"text/javascript","patch_set":3,"id":"fa0719c6_99907045","line":242,"updated":"2016-03-22 18:11:31.000000000","message":"Rewording suggestion: init_themable_select.","commit_id":"85be60de9ddfd4f52572c4899f7df9cd0378886f"},{"author":{"_account_id":11778,"name":"Diana Whitten","email":"hurgleburgler@gmail.com","username":"hurgleburgler"},"change_message_id":"5b06e488d989ab158adb36c3742346dd78187105","unresolved":false,"context_lines":[{"line_number":239,"context_line":"  $el.find(\"#create_image_form input#id_copy_from\").attr(\"placeholder\", \"http://example.com/image.iso\");"},{"line_number":240,"context_line":"};"},{"line_number":241,"context_line":""},{"line_number":242,"context_line":"horizon.forms.themable_select \u003d function () {"},{"line_number":243,"context_line":"  \"use strict\";"},{"line_number":244,"context_line":""},{"line_number":245,"context_line":"  // Update the select value if dropdown value changes"}],"source_content_type":"text/javascript","patch_set":3,"id":"7a1b2928_f7ac48ef","line":242,"in_reply_to":"fa0719c6_99907045","updated":"2016-04-11 21:37:19.000000000","message":"Done","commit_id":"85be60de9ddfd4f52572c4899f7df9cd0378886f"},{"author":{"_account_id":8040,"name":"Timur Sufiev","email":"tsufiev@gmail.com","username":"tsufiev"},"change_message_id":"9edc19f804b81d20cac5c7d26c69b18b89102a66","unresolved":false,"context_lines":[{"line_number":243,"context_line":"  \"use strict\";"},{"line_number":244,"context_line":""},{"line_number":245,"context_line":"  // Update the select value if dropdown value changes"},{"line_number":246,"context_line":"  var $themableSelect \u003d $(\u0027.themable-select\u0027);"},{"line_number":247,"context_line":"  $themableSelect.on(\u0027click\u0027, \u0027li a\u0027, function () {"},{"line_number":248,"context_line":"    var $this \u003d $(this);"},{"line_number":249,"context_line":"    var $container \u003d $this.parents(\u0027.themable-select\u0027);"}],"source_content_type":"text/javascript","patch_set":3,"id":"fa0719c6_f9224c00","line":246,"updated":"2016-03-22 18:11:31.000000000","message":"I think it would make sense to confine the set to $elem.find(\u0027.themable-select), where $elem is passed into the new function.\n\nThis way we would avoid initializing some themable selects twice (I\u0027m thinking about several forms in a modal stack here).","commit_id":"85be60de9ddfd4f52572c4899f7df9cd0378886f"},{"author":{"_account_id":11778,"name":"Diana Whitten","email":"hurgleburgler@gmail.com","username":"hurgleburgler"},"change_message_id":"5b06e488d989ab158adb36c3742346dd78187105","unresolved":false,"context_lines":[{"line_number":243,"context_line":"  \"use strict\";"},{"line_number":244,"context_line":""},{"line_number":245,"context_line":"  // Update the select value if dropdown value changes"},{"line_number":246,"context_line":"  var $themableSelect \u003d $(\u0027.themable-select\u0027);"},{"line_number":247,"context_line":"  $themableSelect.on(\u0027click\u0027, \u0027li a\u0027, function () {"},{"line_number":248,"context_line":"    var $this \u003d $(this);"},{"line_number":249,"context_line":"    var $container \u003d $this.parents(\u0027.themable-select\u0027);"}],"source_content_type":"text/javascript","patch_set":3,"id":"5a18252c_5873e14d","line":246,"in_reply_to":"fa0719c6_f9224c00","updated":"2016-04-11 21:37:19.000000000","message":"Good Catch!  Done.","commit_id":"85be60de9ddfd4f52572c4899f7df9cd0378886f"},{"author":{"_account_id":8040,"name":"Timur Sufiev","email":"tsufiev@gmail.com","username":"tsufiev"},"change_message_id":"9edc19f804b81d20cac5c7d26c69b18b89102a66","unresolved":false,"context_lines":[{"line_number":246,"context_line":"  var $themableSelect \u003d $(\u0027.themable-select\u0027);"},{"line_number":247,"context_line":"  $themableSelect.on(\u0027click\u0027, \u0027li a\u0027, function () {"},{"line_number":248,"context_line":"    var $this \u003d $(this);"},{"line_number":249,"context_line":"    var $container \u003d $this.parents(\u0027.themable-select\u0027);"},{"line_number":250,"context_line":"    var value \u003d $this.data(\u0027selectValue\u0027);"},{"line_number":251,"context_line":""},{"line_number":252,"context_line":"    // Go to the parent form-group and find the select"}],"source_content_type":"text/javascript","patch_set":3,"id":"fa0719c6_d9f4a8f3","line":249,"updated":"2016-03-22 18:11:31.000000000","message":"Educating myself: a choice between $this.parents() and $this.closest() is matter of taste here, right?","commit_id":"85be60de9ddfd4f52572c4899f7df9cd0378886f"},{"author":{"_account_id":11778,"name":"Diana Whitten","email":"hurgleburgler@gmail.com","username":"hurgleburgler"},"change_message_id":"5b06e488d989ab158adb36c3742346dd78187105","unresolved":false,"context_lines":[{"line_number":246,"context_line":"  var $themableSelect \u003d $(\u0027.themable-select\u0027);"},{"line_number":247,"context_line":"  $themableSelect.on(\u0027click\u0027, \u0027li a\u0027, function () {"},{"line_number":248,"context_line":"    var $this \u003d $(this);"},{"line_number":249,"context_line":"    var $container \u003d $this.parents(\u0027.themable-select\u0027);"},{"line_number":250,"context_line":"    var value \u003d $this.data(\u0027selectValue\u0027);"},{"line_number":251,"context_line":""},{"line_number":252,"context_line":"    // Go to the parent form-group and find the select"}],"source_content_type":"text/javascript","patch_set":3,"id":"5a18252c_d89d315b","line":249,"in_reply_to":"fa0719c6_d9f4a8f3","updated":"2016-04-11 21:37:19.000000000","message":"Parent returns more than 1 element, so we definitely wanted closest here.  Great Catch!","commit_id":"85be60de9ddfd4f52572c4899f7df9cd0378886f"},{"author":{"_account_id":8040,"name":"Timur Sufiev","email":"tsufiev@gmail.com","username":"tsufiev"},"change_message_id":"9edc19f804b81d20cac5c7d26c69b18b89102a66","unresolved":false,"context_lines":[{"line_number":250,"context_line":"    var value \u003d $this.data(\u0027selectValue\u0027);"},{"line_number":251,"context_line":""},{"line_number":252,"context_line":"    // Go to the parent form-group and find the select"},{"line_number":253,"context_line":"    var $select \u003d $container.data(\u0027mySelect\u0027);"},{"line_number":254,"context_line":"    if (!$select) {"},{"line_number":255,"context_line":"      $select \u003d $container.find(\u0027select\u0027);"},{"line_number":256,"context_line":"      $container.data(\u0027mySelect\u0027, $select);"}],"source_content_type":"text/javascript","patch_set":3,"id":"fa0719c6_798c7c35","line":253,"updated":"2016-03-22 18:11:31.000000000","message":"I understand each step alone, but am failing to grasp overarching goal of the manipulations. Could you please elaborate which invariant you preserve here?","commit_id":"85be60de9ddfd4f52572c4899f7df9cd0378886f"},{"author":{"_account_id":11778,"name":"Diana Whitten","email":"hurgleburgler@gmail.com","username":"hurgleburgler"},"change_message_id":"5b06e488d989ab158adb36c3742346dd78187105","unresolved":false,"context_lines":[{"line_number":250,"context_line":"    var value \u003d $this.data(\u0027selectValue\u0027);"},{"line_number":251,"context_line":""},{"line_number":252,"context_line":"    // Go to the parent form-group and find the select"},{"line_number":253,"context_line":"    var $select \u003d $container.data(\u0027mySelect\u0027);"},{"line_number":254,"context_line":"    if (!$select) {"},{"line_number":255,"context_line":"      $select \u003d $container.find(\u0027select\u0027);"},{"line_number":256,"context_line":"      $container.data(\u0027mySelect\u0027, $select);"}],"source_content_type":"text/javascript","patch_set":3,"id":"5a18252c_38a385a0","line":253,"in_reply_to":"fa0719c6_798c7c35","updated":"2016-04-11 21:37:19.000000000","message":"Added some comments here to clarify.","commit_id":"85be60de9ddfd4f52572c4899f7df9cd0378886f"},{"author":{"_account_id":8040,"name":"Timur Sufiev","email":"tsufiev@gmail.com","username":"tsufiev"},"change_message_id":"9edc19f804b81d20cac5c7d26c69b18b89102a66","unresolved":false,"context_lines":[{"line_number":261,"context_line":"      $select.val(value).change();"},{"line_number":262,"context_line":"    }"},{"line_number":263,"context_line":"  })"},{"line_number":264,"context_line":"  .find(\u0027li a[title]\u0027).tooltip();"},{"line_number":265,"context_line":""},{"line_number":266,"context_line":"  // Update the dropdown if select value changes"},{"line_number":267,"context_line":"  $themableSelect.children(\u0027select\u0027).on(\u0027change\u0027, function () {"}],"source_content_type":"text/javascript","patch_set":3,"id":"fa0719c6_596ed895","line":264,"updated":"2016-03-22 18:11:31.000000000","message":"Nitpicking: this form of notation may be hard to read (due to size of event handler above). Would be easier to read for me if it was\n\n  $themableSelect.find(...);","commit_id":"85be60de9ddfd4f52572c4899f7df9cd0378886f"},{"author":{"_account_id":11778,"name":"Diana Whitten","email":"hurgleburgler@gmail.com","username":"hurgleburgler"},"change_message_id":"5b06e488d989ab158adb36c3742346dd78187105","unresolved":false,"context_lines":[{"line_number":261,"context_line":"      $select.val(value).change();"},{"line_number":262,"context_line":"    }"},{"line_number":263,"context_line":"  })"},{"line_number":264,"context_line":"  .find(\u0027li a[title]\u0027).tooltip();"},{"line_number":265,"context_line":""},{"line_number":266,"context_line":"  // Update the dropdown if select value changes"},{"line_number":267,"context_line":"  $themableSelect.children(\u0027select\u0027).on(\u0027change\u0027, function () {"}],"source_content_type":"text/javascript","patch_set":3,"id":"5a18252c_18a04990","line":264,"in_reply_to":"fa0719c6_596ed895","updated":"2016-04-11 21:37:19.000000000","message":"I prefer chaining this, actually, but I changed it nonetheless.","commit_id":"85be60de9ddfd4f52572c4899f7df9cd0378886f"},{"author":{"_account_id":8040,"name":"Timur Sufiev","email":"tsufiev@gmail.com","username":"tsufiev"},"change_message_id":"bfd8f4f76399dc65f94bf1d6768d7ea402c78754","unresolved":false,"context_lines":[{"line_number":246,"context_line":"  $elem \u003d $elem || $(\u0027body\u0027);"},{"line_number":247,"context_line":""},{"line_number":248,"context_line":"  // Pass in a container OR the themable select itself"},{"line_number":249,"context_line":"  $elem \u003d $elem.hasClass(\u0027themable-select\u0027) ? $elem : $elem.find(\u0027.themable-select\u0027);"},{"line_number":250,"context_line":""},{"line_number":251,"context_line":"  // Update the select value if dropdown value changes"},{"line_number":252,"context_line":"  $elem.on(\u0027click\u0027, \u0027li a\u0027, function () {"}],"source_content_type":"text/javascript","patch_set":11,"id":"1a122d0e_4178bcc4","line":249,"updated":"2016-04-18 14:29:42.000000000","message":"Uncaught TypeError: $elem.hasClass is not a function\n\nis raised at this line.","commit_id":"0219d74b922170685afe89783b62587a14c07156"}],"horizon/templates/horizon/common/_data_table_table_actions.html":[{"author":{"_account_id":8040,"name":"Timur Sufiev","email":"tsufiev@gmail.com","username":"tsufiev"},"change_message_id":"9edc19f804b81d20cac5c7d26c69b18b89102a66","unresolved":false,"context_lines":[{"line_number":55,"context_line":"        {% endif %}"},{"line_number":56,"context_line":"        \u003cspan class\u003d\"fa fa-caret-down\"\u003e\u003c/span\u003e"},{"line_number":57,"context_line":"      \u003c/a\u003e"},{"line_number":58,"context_line":"      \u003cul class\u003d\"dropdown-menu dropdown-menu-right\"\u003e"},{"line_number":59,"context_line":"      {% for action in table_actions_menu %}"},{"line_number":60,"context_line":"        \u003cli\u003e"},{"line_number":61,"context_line":"          {% include \"horizon/common/_data_table_action.html\" with is_table_action\u003d1 %}"}],"source_content_type":"text/html","patch_set":3,"id":"fa0719c6_79511c0e","line":58,"updated":"2016-03-22 18:11:31.000000000","message":"Is the existing table actions dropdown already a themable select thanks to some JS magic?\n\nSame question is for row-level actions.","commit_id":"85be60de9ddfd4f52572c4899f7df9cd0378886f"}]}
