Browse Source

Fix IE bug and show errors.

tags/v1.2.0-rc1
Justin Nuß 11 years ago
parent
commit
12fb42de5a
5 changed files with 43 additions and 13 deletions
  1. +7
    -0
      public/css/gogs.css
  2. +30
    -6
      public/js/app.js
  3. +4
    -5
      routers/repo/issue.go
  4. +1
    -1
      templates/repo/issue/create.tmpl
  5. +1
    -1
      templates/repo/issue/view.tmpl

+ 7
- 0
public/css/gogs.css View File

@@ -1836,4 +1836,11 @@ body {

#issue-create-form #attached {
margin-bottom: 0;
}

#submit-error {
display: none;
padding: 10px 15px 15px 15px;
font-weight: bold;
text-align: center;
}

+ 30
- 6
public/js/app.js View File

@@ -568,7 +568,7 @@ function initIssue() {
};

var out = function() {
$hoverElement.hide();
//$hoverElement.hide();
};

$(".issue-main .attachments .attachment").hover(over, out);
@@ -598,6 +598,13 @@ function initIssue() {

$("button,input[type=\"submit\"]", fileInput.form).on("click", function() {
clickedButton = this;

var $button = $(this);

$button.removeClass("btn-success");
$button.addClass("btn-warning");

$button.text("Submiting...");
});

fileInput.form.addEventListener("submit", function(event) {
@@ -630,16 +637,33 @@ function initIssue() {
});

xhr.addEventListener("load", function() {
if (xhr.response.ok === false) {
$("#submit-error").text(xhr.response.error);
var response = xhr.response;

if (typeof response == "string") {
try {
response = JSON.parse(response);
} catch (err) {
response = { ok: false, error: "Could not parse JSON" };
}
}

if (response.ok === false) {
$("#submit-error").text(response.error);
$("#submit-error").show();

var $button = $(clickedButton);

$button.removeClass("btn-warning");
$button.addClass("btn-danger");

$button.text("An error encoured!")

return;
}

window.location.href = xhr.response.data;
window.location.href = response.data;
});

xhr.responseType = "json";

xhr.open("POST", this.action, true);
xhr.send(data);


+ 4
- 5
routers/repo/issue.go View File

@@ -189,9 +189,9 @@ func CreateIssue(ctx *middleware.Context, params martini.Params) {

func CreateIssuePost(ctx *middleware.Context, params martini.Params, form auth.CreateIssueForm) {
send := func(status int, data interface{}, err error) {
log.Error("issue.Comment(?): %s", err)

if err != nil {
log.Error("issue.CreateIssuePost(?): %s", err.Error())

ctx.JSON(status, map[string]interface{}{
"ok": false,
"status": status,
@@ -711,9 +711,9 @@ func uploadFiles(ctx *middleware.Context, issueId, commentId int64) {

func Comment(ctx *middleware.Context, params martini.Params) {
send := func(status int, data interface{}, err error) {
log.Error("issue.Comment(?): %s", err)

if err != nil {
log.Error("issue.Comment(?): %s", err.Error())

ctx.JSON(status, map[string]interface{}{
"ok": false,
"status": status,
@@ -860,7 +860,6 @@ func Comment(ctx *middleware.Context, params martini.Params) {
}
}

log.Error("url: %#v", fmt.Sprintf("%s/issues/%d", ctx.Repo.RepoLink, index))
send(200, fmt.Sprintf("%s/issues/%d", ctx.Repo.RepoLink, index), nil)
}



+ 1
- 1
templates/repo/issue/create.tmpl View File

@@ -95,7 +95,7 @@
<div class="tab-content">
<div class="tab-pane" id="issue-textarea">
<div class="form-group">
<div id="submit-error"></div>
<div id="submit-error" class="text-danger"></div>
<textarea class="form-control" name="content" id="issue-content" rows="10" placeholder="Write some content" data-ajax-rel="issue-preview" data-ajax-val="val" data-ajax-field="text">{{.content}}</textarea>
</div>
</div>


+ 1
- 1
templates/repo/issue/view.tmpl View File

@@ -134,7 +134,7 @@
<div class="tab-content">
<div class="tab-pane" id="issue-textarea">
<div class="form-group">
<div id="submit-error"></div>
<div id="submit-error" class="text-danger"></div>
<input type="hidden" value="{{.Issue.Index}}" name="issueIndex"/>
<textarea class="form-control" name="content" id="issue-reply-content" rows="10" placeholder="Write some content" data-ajax-rel="issue-preview" data-ajax-val="val" data-ajax-field="text">{{.content}}</textarea>
</div>


Loading…
Cancel
Save