Bug Hunting

Posted on
Page
of 10
First Prev
/ 10
Next
  • Easiest fix... @_dan_ consider changing your username.

  • If you type it manually then @\_Testfoo_ works. Maybe the @ username auto-completer could slip the backslash in.

  • ( @_TestFoo_ is a test user I made, feel free to @ the crap out of it when testing )

  • People would probably freak out and remove it.

    Though I could run the mentions regexp over the raw markdown and see if it makes sense to perform the escaping at that point.

  • I've put in a solution that may work, but it might have unintended side effects too.

    I figure the best way to find out is to ship it and see: http://play.golang.org/p/JNHj3PtZaO

    package main
    
    import "fmt"
    import "regexp"
    import "strings"
    
    var (
    	regMentions = regexp.MustCompile(`(?:^|\W)([+@](\S+))`)
    	regSpecial  = regexp.MustCompile("([\\\\_*{}[\\]()#-.!])")
    	replSpecial = `\$1`
    )
    
    func main() {
    	str := `@_d\a*n)]_ foo +_dan_ +_dan_`
    
    	fmt.Println(str)
    
    	for _, s := range regMentions.FindAllString(str, -1) {
    		str = strings.Replace(str, s, regSpecial.ReplaceAllString(s, replSpecial), 1)
    	}
    
    	fmt.Println(str)
    }
    

    @dan should now work

  • Obviously it's now super-aggressive and has escaped my examples... the link above the code shows you the before and after.

  • 'dan'

    ..that is all very well, but I still cannot go to page 4 without labouriously page clicking...

  • @Tommy cannot read this (unless he's logged out), but I must thank him for helping me improve the banning functionality so that it is truly effective at the site level.

  • If looked through the forums but was not able to find a solution.

    I can't change my username, no problems with the avatar. I've tried both on Firefox and my iphone.

    Am I missing a really obvious step?

  • If you cannot change your username then one of the two following things is true:

    1. You are trying to change the name to one that already exists.
    2. You are trying to change the name to one that matches a reserved name given to those investors and donors who helped fund the creation of this software, and your email does not match the email we have on record for the investor/donor.

    It is more likely #1. Why not search first to see if a user already exists with that name.

  • On android 4.3/chrome browser, videos get posted and they appear three times in a row.

  • Thanks for the username info. I was using the wrong email address. Got my old username back

  • still unresolved

    le sigh...

  • Yeah, cannot reproduce and it works everywhere else.

    Though... I wonder... does it work when you use the pagination at the top of the screen rather than the one at the bottom?

  • Neither I'm afraid; any page number I enter results in page 1

  • Are you a developer? Do you have a JavaScript console?

    If you do... then you can help debug it. Because I cannot reproduce this at all, and the code makes perfect sense, so your specific version of IE9 is doing something funny.

    The code we are running is simply this:

    $('form[name=paginationByOffset]').submit(function(e){
    	console.log("Page jump requested")
    	var self    = $(this),
    		initial = self.attr('data-initial'),
    		limit   = self.attr('data-limit'),
    		max     = self.attr('data-max'),
    		value   = parseInt(self.find('input[type=text]').val()),
    		hidden  = self.find('input[name=offset]');
    	console.log("limit = " + limit + " , max = " + max + " , value = " + value);
    	if (!isNaN(value) && value >= 1 && value <= max && value != initial) {
    		console.log("Jump")
    		if (limit && value){
    			hidden.val(limit * (value-1));
    		}
    	} else {
    		console.log("Cancel jump")
    		e.preventDefault();
    	}
    });
    

    We have HTML that looks like this:

    <form
    	name="paginationByOffset"
    	method="GET"
    	data-initial="{{ pagination.page }}"
    	data-limit="{{ pagination.limit }}"
    	data-max="{{ pagination.total_pages }}"
    >
    	<input
    		type="text"
    		min="1"
    		value="{{ pagination.page }}"
    		max="{{ pagination.total_pages }}"
    		step="1"
    		pattern="\d*"
    		title="Enter the page number to jump to"
    		class="form-control"
    	/>
    	<input name="offset" type="hidden" />
    </form>
    

    All that happens is:
    1) A value is entered into the text field
    2) The form is submitted and the JavaScript fires
    3) The js pulls the value and makes sure it is a number
    4) If the number is different from whatever the default is, the form is submitted with the new value

    As the form is method=GET and the hidden field is named, the offset is put into the URL.

    This works everywhere, except your version of IE9. It even works on other versions of IE, which is why I haven't been able to solve it... I don't know which part is broken according to your browser.

  • no, not a developer

    and it's just this work machine, no other device I use, quirky huh.

  • Quotes have been funny recently. The > from the beginning of the first line is getting put at the end of the whole quote instead.

  • I've been getting that too.

  • lines starting with a 'greater than' denote quoted text

  • Nope, not seeing it.

    What do you post that can recreate that? Email me at david@microcosm.cc with the exact text and if I can reproduce it I'll take a deeper look.

  • Post a reply
    • Bold
    • Italics
    • Link
    • Image
    • List
    • Quote
    • code
    • Preview
About

Bug Hunting

Posted by Avatar for Backstop @Backstop

Actions