megatolya / benefits

¯\_(ツ)¯\_
0 stars 0 forks source link

Лев Толстой #23

Open megatolya opened 9 years ago

megatolya commented 9 years ago

Как описать ачивку Лев Толстой? Когда у человека много букв в инпуте

Я додумался только до

      {
        "rule_id": 666,
        "url_pattern": "*",
        "event": "keydown",
        "selector": "textarea, input",
        "expression": "this.value.length",
        "greaterOrEqual": 2000
      }

Или

      {
        "rule_id": 666,
        "url_pattern": "*",
        "event": "keydown",
        "selector": "textarea, input",
        "evalInTargetContext": "this.value.length >= 2000"
      }
megatolya commented 9 years ago

Под expression я имею в виду, что это не eval, а строка, которую мы сами умеем парсить.

vandy commented 9 years ago

Писать более абстрактно:

// type of achievement: typying-in
{
  "rule_id": 1,
  "type": "type-in",
  "selector": "smth", // если нужно выбрать к каким элементам применить монитор
  "length": "gt 1000"
}

Сам iTracker, отвечающий за DOMEvent, знает что такое type-in rule и подвешивается на правильные события, на нужные элементы и проверяет факт чего-то, в данном случае length, можно добавить ещё ключевые слова, чтобы следить за другими параметрами в типе type-in.

megatolya commented 9 years ago

Очень неабстрактно. Устаним правила придумывать. И путаться в них.

Как по твоей логике проверить тайтл страницы?

vandy commented 9 years ago

Разные сущности делать: type-in-rule dom-window-rule ...

У каждого будет набор свойств, которые будут ключевыми словами, а эти ключевые слова iTracker будет уже сам знать как обрабатывать.

Но это, конечно, на подумать ещё, как мы вплотную подойдем к реализации не только переходов по страницам.