Not allowing typing questions

so weird…

Ha … I think I found the problem. I left the 2 functions for Learning’ and ‘Mistakes-Review’ to ‘false’. Now that I changed it it’s working like a charm. After you @Ziutek mentioned that it’s still working for you I took a closer look at the script. :grin:

@MemriseMatty, there are several current threads now running about the recent return of the bug which is preventing typing tests on phrases in some courses. I have posted on this one because it contains the history.

My experience while reviewing today is that the ‘bug’ was present in my Memrise-created/supported Spanish courses but not in A1 Spanish (which is no longer supported by Memrise), where I was presented with typing tests for phrases.

Can you please let us have an explanation of what has caused this bug to reappear and an estimate of when we can expect it to be removed. As many of us have said before, tapping tests and multiple choice tests have limited value. Typing tests are a key element of the learning process.

Thanks!

9 Likes

@alanh, This is not an accident or bug. They changed it again deliberately.

See my post here for explanation: Big Flaw on answers in multiple choices

3 Likes

Seriously memrise team is completely oblivious about this? they even don’t bother to come and explain what is happening.

We’re sorry that this wasn’t mentioned in the release notes.

This was an intentional change in how Memrise Official courses work.
When creating Memrise courses we’ve had feedback that this would be the optimal way of presenting tests so that there is a good balance between fairness and challenge, when learning a new language.

Community courses will not be affected by this change to allow for more flexibility and creativity to our community course creators.

For more information you can see the release notes: Memrise Release Notes - 16 Feb 2017 - Updated

I’m once again not getting any typing tests for longer phrases in my German review. This is extremely frustrating. I tried running the same script I used last time this happened a couple of months ago, but to no avail. Does someone have a script to return to the normal all-typing review? I assume this once again is a decision by Memrise, not a bug.

1 Like

ok I was informed that scripts were not working and inserted the fix so I’m back to all typing.

How did you fix it?

it is stupid. why should we use script. why cannot memrise team sort this very simple problem? and why they change the setting every now and then? I am using safari on my iphone and cannot use scripts. I think it is the end of the memrise era for me.

2 Likes

Hi,
I have the same issue for typing test but not for ALL the courses I created.
I created first a french course about household tasks more than 3 weeks ago. There is no typing questions for level 1 (only multiple choice). There is multiple choice and order words questions for level 2 (as there are only items of three words and more)

BUT I created a french course about cooking 8 days ago and there are typing questions (and multiple choice, no order questions because it’s only two words items) so all is fine with this course.

I don’t understand why it doesn’t work with the level 1 of my first course. I ticked “enabled writing test” for these two course but it seems there is a bug for my first course, not for the 2nd one. The issue appears on app (android) and desktop (windows 8.1).
Should I erase and remake the first course ??
Below, my second course about cooking, then my first one about chores with only borring multiple choice.

Many thanks

BeaTrisy, choosing the right answer is very easy when it is multiple answers and there will no memorising skill necessarily be achieved through that. you completely ruined the main point of memrise (memorising). the least you can do is to make it optional (currently there is nothing in the setting regarding this).
I have canceled the renewal of my subscription as I cannot see any benefits in current release.

6 Likes

I finally resolved my problem (see forward) :

  • I created a new level and import the same items one by one from the database of my course about the household chores (hopefully, it was only 34 items).
  • This new level had been created directly with the setting “enabled typing test” (by default I guess).
  • I tried this new level (which is a manual copy of the former buggy level)
  • As it works fine currently, I deleted the former buggy level.
1 Like

Hello, would it be possible to share the fixed script? Thanks!

hi, someone posted a tamper monkey solution here a few weeks ago, but it looks like it has stopped working nowadays. Can you please explain what do i do to fix this?

please do as I do. cancel your subscription until they value their customers

2 Likes

@fillipka It works for me. I see two possible reasons why it might not work for you:
1- “No typing” was turned on for official courses a couple days ago, so if you want the script to apply even to official courses you need to use this change,
2- The website has recently been updated from http to https and Cooljingle recently updated the script for this. If you had already applied the above change before and have automatic updates for this script, the update might have overwritten the change (you’ll just need to apply it again)

1 Like

here’s the full fixed script I’m using successfully

// ==UserScript==
// @name Memrise All Typing
// @namespace https://github.com/cooljingle
// @description All typing / no multiple choice when doing Memrise typing courses
// @match https://www.memrise.com/course//garden/
// @match https://www.memrise.com/garden/review/*
// @version 0.1.4
// @updateURL https://github.com/cooljingle/memrise-all-typing/raw/master/Memrise_All_Typing.user.js
// @downloadURL https://github.com/cooljingle/memrise-all-typing/raw/master/Memrise_All_Typing.user.js
// @grant none
// ==/UserScript==

$(document).ready(function() {

//*****************************************************************************************************************************************************
//MEMRISE ALL TYPING
//-----------------------------------------------------------------------------------------------------------------------------------------------------
//This userscript prevents multiple choice from occuring, replacing it with a typing prompt.
//You can configure the extent to which this happens by clicking the 'All Typing Settings' link on the left when in a learning session.
//Changes you make will be saved locally on your machine.
//*****************************************************************************************************************************************************

var localStorageIdentifier = "memrise-all-typing",
    localStorageObject = JSON.parse(localStorage.getItem(localStorageIdentifier)) || {};

$("body").append(
        `
            <div class='modal fade' id='all-typing-modal' tabindex='-1' role='dialog'>
                <div class='modal-dialog' role='document'>
                    <div class='modal-content'>
                        <div class='modal-header'>
                            <button type='button' class='close' data-dismiss='modal'><span >×</span></button>
                            <h1 class='modal-title' id='all-typing-modal-label'>All Typing Settings</h1>
                        </div>
                        <div class='modal-body'>
                            <div>
                                <input class='all-typing-setting' id='include-reviews' type='checkbox'>
                                <label for='include-reviews'>Include Reviews</label>
                                <em style='font-size:85%'>only typing when reviewing an item which hasn't been watered for a while</em>
                            </div>
                            <div>
                                <input class='all-typing-setting' id='include-mistake-reviews' type='checkbox'>
                                <label for='include-mistake-reviews'>Include Mistake Reviews</label>
                                <em style='font-size:85%'>only typing on items that reoccur after getting them wrong earlier in the session</em>
                            </div>
                            <div>
                                <input class='all-typing-setting' id='include-learning' type='checkbox'>
                                <label for='include-learning'>Include Learning</label>
                                <em style='font-size:85%'>only typing on new items you are learning</em>
                            </div>
                            <div>
                                <input class='all-typing-setting' id='include-typing-disabled' type='checkbox'>
                                <label for='include-typing-disabled'>Include Typing Disabled</label>
                                <em style='font-size:85%'>enables typing even if typing was disabled due to <ul><li>course column set to no typing, or </li><li>official Memrise course and text > 15 characters</li></ul></em>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
        `);

$('#left-area').append("<a data-toggle='modal' data-target='#all-typing-modal'>All Typing Settings</a>");

$('#all-typing-modal').on('shown.bs.modal', function() {
    $(document).off('focusin.modal'); //enable focus events on modal
});

$('.all-typing-setting')
    .prop('checked', function(){ return localStorageObject[$(this).attr('id')] !== false; }) //all options true by default
    .css({
        "vertical-align": "top",
        "float": "left",
        "margin-right": "5px"
    })
    .change(function(e){
        localStorageObject[e.target.id] = $(this).is(':checked');
        localStorage.setItem(localStorageIdentifier, JSON.stringify(localStorageObject));
        console.log(localStorageObject);
    });


MEMRISE.garden.boxes.load = (function() {
    var cached_function = MEMRISE.garden.boxes.load;
    return function() {
        onReviews();
        onMistakeReviews();
        onLearning();
        onTypingDisabled();
        return cached_function.apply(this, arguments);
    };
}());

function onReviews() {
    MEMRISE.garden.session.box_factory.is_lowest_rung = function() {
        if(localStorageObject["include-reviews"] !== false) {
            return false;
        }
    };
}

function onMistakeReviews() {
    MEMRISE.garden.boxes.add_next = (function() {
        var cached_function = MEMRISE.garden.boxes.add_next;
        return function() {
        if(localStorageObject["include-mistake-reviews"] !== false) {
            makeMaybeTyping(arguments[0]);
        }
            return cached_function.apply(this, arguments);
        };
    }());
}

function onLearning() {
    MEMRISE.garden.session.box_factory.make = (function() {
        var cached_function = MEMRISE.garden.session.box_factory.make;
        return function() {
            var result = cached_function.apply(this, arguments);
            if (arguments[0].learn_session_level && localStorageObject["include-learning"] !== false) {
                makeMaybeTyping(result);
            }
            return result;
        };
    }());
}

function onTypingDisabled() {
    MEMRISE.garden.session.box_factory.isTypingDisabled = function() {
        if(localStorageObject["include-typing-disabled"] !== false) {
            return false;
        }
    };
}

function makeMaybeTyping(box) {
    if (box.template === "multiple_choice") {
        var boxCopy = jQuery.extend({}, box);
        box.template = MEMRISE.garden.session.box_factory.makeMaybeTyping(boxCopy).template;
    }
}

});

I would rather type too. It is too easy this way :disappointed:

@ Ziutek I don’t understand one sylabe of it, hihi