diff --git a/system/expressionengine/third_party/github_addon_installer/language/english/github_addon_installer_lang.php b/system/expressionengine/third_party/github_addon_installer/language/english/github_addon_installer_lang.php index 9112901..e886dff 100644 --- a/system/expressionengine/third_party/github_addon_installer/language/english/github_addon_installer_lang.php +++ b/system/expressionengine/third_party/github_addon_installer/language/english/github_addon_installer_lang.php @@ -26,6 +26,7 @@ 'addon_reinstall' => 'Re-install/Update', 'addon_update' => 'Update Available',// %s', 'addon_author' => 'Author', + 'addon_branch' => 'Branch', 'addon_github_url' => 'GitHub URL', 'filter_by_status' => 'Filter By Status', 'filter_by_author' => 'Filter By Author', diff --git a/system/expressionengine/third_party/github_addon_installer/mcp.github_addon_installer.php b/system/expressionengine/third_party/github_addon_installer/mcp.github_addon_installer.php index 91e7908..28a159f 100644 --- a/system/expressionengine/third_party/github_addon_installer/mcp.github_addon_installer.php +++ b/system/expressionengine/third_party/github_addon_installer/mcp.github_addon_installer.php @@ -110,18 +110,21 @@ public function index() //$install = (in_array($addon, $current_addons)) ? lang('addon_install') : lang('addon_reinstall'); $url = 'https://github.com/'.$params['user'].'/'.$params['repo']; - + if (isset($params['branch'])) { $url .= '/tree/'.$params['branch']; } - + + $branch = isset($params['branch']) ? $params['branch'] : 'master'; + $vars['addons'][] = array( 'name' => $name,//.$description, 'github_url' => anchor($url, $url, 'rel="external"'), + 'branch' => form_input("", $branch, 'class="branch '.$addon.'-branch"'), 'author' => $params['user'], 'status' => $status, - 'install' => anchor($this->base.AMP.'method=install'.AMP.'addon='.$addon, lang('addon_install')) + 'install' => anchor($this->base.AMP.'method=install'.AMP.'addon='.$addon, lang('addon_install'), 'data-addon="'.$addon.'"') ); } @@ -142,7 +145,7 @@ public function index() a.html("'.lang('addon_installing').'"); $.get( $(this).attr("href"), - "", + {branch: $("."+$(this).data("addon")+"-branch").val()}, function(data){ tds.animate({backgroundColor:originalColor}); a.html(originalText); @@ -235,6 +238,11 @@ public function install() $params = $this->manifest[$addon]; $params['name'] = $addon; + + if ($this->EE->input->get('branch')) + { + $params['branch'] = $this->EE->input->get('branch'); + } $this->EE->session->set_flashdata('addon', $addon); diff --git a/system/expressionengine/third_party/github_addon_installer/views/index.php b/system/expressionengine/third_party/github_addon_installer/views/index.php index 6601eef..642df6c 100644 --- a/system/expressionengine/third_party/github_addon_installer/views/index.php +++ b/system/expressionengine/third_party/github_addon_installer/views/index.php @@ -27,6 +27,7 @@ +   @@ -37,6 +38,7 @@ +