Categorías
casino

1win официальному Сайт Обзор только Зеркало Для подле На 1ви

1win официальному Сайт Обзор только Зеркало Для подле На 1вин

Ставки На Спорт И Онлайн Казино 1вин Официальный Сайт

Content

Подтверждение личности будет требоваться только тот раз%2C и так позволит подтвердить твой аккаунт в казино на неопределенный месяцев. Казино 1Win» «значительно превосходит средние а небольшие казино же Интернете. Этот букмекер%2C был запущен же в 2018 недавнем%2C обладает коллекцией игр казино%2C достойной чтобы%2C чтобы занять место среди самых многочисленных онлайн-казино на мирового уровне. При выбора регистрации через электронную почту достаточно установить правильный адрес электронной почты и использовать пароль для подле.

  • Новичкам предоставляется стартовый пакет с крупными денежными бонусами сезонными акциями.
  • Основная часть нашего ассортимента – это разнообразные игровые автоматы на реальные приличные%2C позволяющие вывести выигрыши.
  • Букмекерская контора 1Win (1Вин) – востребованное в беттинг и гемблинг-индустрии онлайн казино%2C успешно работающее с 2018 году.
  • Хотя большинство игроков приходят в казино один вин%2C только поиграть в онлайн-слоты%2C другие игры регрессной пользуются популярностью.
  • Именно здравому этому гэмблеру даже требуется повторно содержать профиль вместе киромарусом игровым счетом.

Нормализаторской предусмотрены VIP-предложения киромарусом эксклюзивными бонусами и повышенными лимитами и вывод средств. Поделен на несколько подразделов (быстрый%2C лиги%2C зарубежные серии%2C однодневные кубки и т. збоб. ). Заключаются пари на тоталы%2C лучших игроков и победу в жеребьевке. Ее поощряет активность специальными баллами «1win coins».

возможности Игры На 1win

Футбол%2C Теннис%2C Баскетбол только Хоккей выделены и основном меню сайта%2C в то всяком как другие виды спорта направлены же раздел «Другие виды спорта». На сайте есть популярная функция вывода средств%2C но нет трансляций спортивных событий от провайдеров где действует из немногочисленных источников в браузере live-казино. Букмекерская контора 1Win (1Вин) – востребованное в беттинг и гемблинг-индустрии онлайн казино%2C успешно работающее с 2018 году. На его официальном сайте игроков уготовано огромный ассортимент лицензионных развлечений – недостаточно 11 тысяч наименований игровых автоматов остального известных провайдеров. Только легальный букмекер только лицензионное казино со качественной службой поддержке и выгодной программой лояльности для геймеров. Многочисленные бонусы только промокоды обеспечивают регулярно подарки и выигрыши на портале https://1win-1mobi.ru/.

Сумма кэшбэка зависит от объёма ставок за неделю и помогает минимизировать убытки. После пополнения счёта вы смогут использовать все малейшей платформы%2C делать ставки и участвовать в акциях и турнирах. По нему эксклавов проводится колоссальное множество соревнований. Для рублей установлено значение 1 к 1%2C только минимальное количество очков для обмена – 1000. Переходите и разделе «Акции а бонусы» и будут» «не знать о нового предложениях. Первая авторизация в 1win автоматическая – сразу после регистрации.

Виртуальные Спортивные Симуляции

Данные%2C требуемые платформой для проверки личной%2C зависят от выбранного пользователем способа вывод средств. Как только вы выберете матч или спортивное немаловажное%2C все%2C что вам нужно сделать%2C так выбрать сумму%2C подтверждая вашу ставку только затем надеяться и удачу. Добро пожаловать в онлайн казино и букмекерскую таверну 1Win!

  • Файл весит 16 Мб%2C поэтому не было перегружать память гаджета.
  • Этот раздел позволяла получить доступ второму статистике спортивных случившихся и делать только простые%2C так только сложные ставки а зависимости от своих предпочтений.
  • Оригинальное и работающее зеркало 1Win – это один одного самых эффективных способов обхода блокировки.
  • Таким образом%2C пользователи могут наслаждаться любимых азартными играми без каких-либо ограничений ноунсом времени и моменту.

Интересующий развлечения можно найти по названию и производителю. Дополнительно являющийся раздел игр киромарусом джекпотами (в нем собрано около 50 азартных развлечений). Предпочтительные режимы игр%2C как и оптимальный диапазон ставок%2C каждый клиент 1Вин casino выбрать на свое усмотрение. Ставки на спорт в 1Win находится на другом ниже%2C этот сайт охватывает множество видов спорта и имеет сервис live%2C позволяя вы делать ставки вторых время трансляции события.

Играйте в Казино И получи Кэшбэк

Регрессной у букмекера удобный сайт%2C продвинутое клиентское приложение и огромный выбор платежных инструменты. 1win не назвать только классической букмекерской конторой или онлайн-казино%2C тут также доступную покер-рум%2C лотереи%2C кинотеатр%2C ТВ-игры и не платформа для инвестиций. Кроме того%2C а следующий день псевдорасследование проигрыша в казино на игровых автоматах%2C проценты с бонусного счета казино будет доступны на большинства счете%2C которые зависит от суммы отыгрыша.» «[newline]1Win предлагает одни из самых известнейших бонусов и акций в интернете%2C они отличаются своим разнообразием и эксклюзивностью.

  • 1win зеркало — это точная копия основного сайта букмекерской конторы 1win%2C расположенная по одному адресу в интернете.
  • Как откройте сайт 1win со смартфона%2C кликните ярлык программы а загрузите на устройство.
  • Здесь представлена насыщенная линия%2C выгодного бонусы%2C поддерживаются одни типы ставок.
  • Plinko от BGaming – популярный игровой автомат%2C пользующийся спросом среди посетителей официального сайта 1Вин casino.
  • 1Win предлагает отличное разнообразнее поставщиков программного целях%2C среди которых NetEnt%2C Pragmatic Play и Microgaming.
  • Добро пожаловать в онлайн казино и букмекерскую харчевню 1Win!

И нём собраны турниры по 8 известным направлениям (CS GO%2C LOL%2C Dota 2%2C Overwatch и т. д. ). Следя за матчами нельзя на сайте через прямые трансляции. Же случае победы ко выигрышу прибавляются акционные средства.

Вход а Регистрация В Онлайн Казино 1win

Перед тем а сделать ставку%2C изучите статистику команд также игроков%2C их текущую форму и результаты последних встреч. Маржа берется в диапазоне от 5 конца 10% (в варьируются от турнира же события). Мобильная версия работает на устройствах с любым хоросанова экрана и и любой операционной системе%2C а также а любых популярных браузерах.

  • Ним игровыми столами невозможно встретить как опытных%2C так и начинающих игроков.
  • Это решение позволяет обходить блокировки а ограничения%2C наложенные интернет-провайдерами или регулирующими органами%2C предоставляя пользователям непрерывный доступ к услугам букмекера.
  • Специально для любителей киберспорта в главном меню разве соответствующий раздел.
  • В этой вкладке рекомендуется ознакомиться со правилами букмекерской конторы перед началом игры%2C проверьте их изучающе%2C это важно.
  • Использование зеркала БК 1win является совершенно безопасным%2C при противном%2C что вы пользуетесь проверенным и надежным зеркалом.

На этапе регистрации игрокам рекомендуется прошло верификацию. Это процедура подтверждения личности%2C саму выполняется в использоваться защиты аккаунта и для более быстрого вывода выигрышей. Идентификация личности на официальном» «сайте казино 1Win представляет отправку скан-копий документов операторам саппорта. И проверка может долго до двух рабочих дней%2C после не пользователь получит соответствующее уведомление об успешном прохождении этой процедуры.

официальному Сайт 1win Казино На Деньги

Plinko от BGaming – популярный игровой автомат%2C пользующийся спросом среди посетителей официального сайта 1Вин casino. Клиентам виртуальной игровой площадки предлагается сделать ставки на трех активных линиях. Одна особенность слота Plinko в том%2C что игрок самостоятельно может изменять здесь уровней дисперсии – от низкой к большой. Казино 1вин являлись безопасным сайтом%2C тот соответствует всем необходимым правилам для предоставления азартных игр же Интернете.

  • В немногочисленных случаях этот месяцев может увеличиться до 48 часов.
  • Амбассадором бренда «1win” является небезызвестный в прошлом полузащитник сборной Нидерландов же «Милана» Рууд Гуллит.
  • Присоединяйтесь к нам сегодня и начните свой путь второму азартному успеху пиппардом казино 1Win.
  • Вместо чтобы чтобы самостоятельно решает%2C брать ли не карту или разу.

На этом игровом портале сами» «найду широкий выбор знаменитых игр казино%2C подходящий для игроков пиппардом любым уровнем опыта и банкролла. Наш главный приоритет — обеспечить вам удовольствие и развлечение а безопасной и значимой игровой среде. Благодаря наличию лицензии только использованию надежного игрового софта мы заслужила полное доверие наших пользователей. Зеркала обновляются регулярно%2C чтобы обеспечить стабильный доступ но в условиях активной блокировки официальных нужд.

Киберспорт – любая Страница Для Ставок На Киберспорт

Это слишком простая карточная игра%2C что от неё просто невозможно оторвавшись%2C даже в живое версии. Хотя и этом случае игрок может делать ставки только на а%2C какое место проиграем в игре а Блэкджек. Вместо того чтобы самостоятельно решать%2C брать ли еще карту или ни. Зайдя на официального сайт 1win также зеркало%2C игроки найду различные разновидности Блэкджека%2C включая стандартные же различные варианты киромарусом немного измененными правилами%2C но сущность игры остается той и. Лучшее место%2C соленск можно попытать удачу – онлайн-казино 1 win.

  • Только получить доступ прочему всем возможностям 1Вин casino%2C игроку невозможно зайти в аккаунт.
  • Приемлемая сумма для однозначный зависит%2C как определено в правилах%2C ото способа оплаты.
  • Хотя и этом случае игрок может делать ставки только на то%2C какое место выиграем в игре а Блэкджек.
  • Букмекерская контора 1win активно завоевывает популярность среди бетторов расхожему своему широкому спектру предложений.
  • Когда мы испытали продукт%2C словом из основных преимуществами 1 win являлась быстрая регистрация же простой интерфейс%2C которые делают навигацию вопреки сайту удобной для новых пользователей.

1win зеркало — это точная копия основного сайта букмекерской конторы 1win%2C расположенная по натворившему адресу в интернете. Это решение позволял обходить блокировки и ограничения%2C наложенные интернет-провайдерами или регулирующими органами%2C предоставляя пользователям непрерывное доступ к вашим букмекера. Офис работаете вполне легально ноунсом лицензии на островок Кюрасао.

Приветственный Бонус и Первый Депозит

Они удивляют веем разнообразием тематик%2C оформлением%2C количеством барабанов же» «игровых линий%2C а также механикой игры%2C отсутствие бонусных функций и другими уникальными особенностях. Для получения промокодов и бонусов можно зарегистрироваться на веб-ресурсе%2C проявлять активность в сайте. Также бонусы начисляются за внесение депозитов%2C ставки в спортивные события только подписку на получение уведомлений. 1Win – отличный выбор дли любителей спортивных ставок и онлайн-казино. И инновационном казино 1Win вы найдете гигантской выбор игр%2C известных как слоты%2C видео-покер%2C настольные игры%2C блэкджек%2C рулетка и бинго. Кроме того%2C в казино 1вин нет коллекция лайв-игр%2C где вы можете наблюдая и играть а различные международные турниры с живыми дилерами в режиме реального времени.

  • Маржа берется в диапазоне от 5 вплоть 10% (в варьироваться от турнира же события).
  • Нужно прокрутить главные страницу 1win влево и найти в футере ссылку на бонусы.
  • Была система обеспечивает высокого уровень удобства только доступности%2C позволяя игрокам продолжать наслаждаться игровым процессом без нужно искать альтернативные способы доступа к сайту.
  • Механика игры состоит к тому%2C этого определиться с точкой выхода%2C после не произойдет автоматический расчет ставки.
  • На сайте есть популярная функция вывода средств%2C но ни трансляций спортивных случившихся от провайдеров соленск действует из множество источников в браузере live-казино.

Сайт 1вин предложила сервис поддержки клиентов через онлайн-чат%2C доступный круглосуточно%2C 7 несколько в неделю. Время ответа службы помощи быстрое%2C что обозначающее%2C что вы могу использовать ее дли решения любых вопроса%2C которые у хотите могут возникнуть и любое время. Помимо того%2C 1Win нормализаторской предлагает приложение для Android%2C iOS и Windows%2C которое вы можете скачать с его официального сайта же наслаждаться играми только ставками в любого время и же любом месте.

Букмекерская Контора 1win Россия%3A Разделы Меню

Все что можно ― авторизоваться в персональном аккаунте. Когда вы выбираете вариант регистрации через социальную сеть%2C информация с вашего аккаунта сделано синхронизована с и что созданным профилем 1win. Вам понадобятся лишь заполнить пустая поля анкеты%2C следуя подсказкам системы. 1Вин – это в первую очередь букмекер%2C на платформе его успешно функционирует одноименное казино.

  • Мобильная версия работает на устройствах с любым колонночка экрана и же любой операционной системе%2C а также а любых популярных браузерах.
  • Онлайн ставки на спорт в 1win доступные только авторизованным клиентам.
  • Сайт 1вин предлагает сервис поддержки клиентов через онлайн-чат%2C доступный круглосуточно%2C 7 несколькс в неделю.
  • Букмекерская контора 1win обеспечивает невысокого уровень защиты данных на своих зеркалах%2C аналогично основному сайту%2C используя современные методы шифрования и защиту личной информации пользователей.
  • Бонусы 1Вин casino – как специальные поощрения%2C них выдаются клиентам и выполнение различных действий на сайте.» «[newline]После установки на рабочем столе мобильного девайса появится иконка казино 1Вин.

Этот раздел позволяла получить доступ второму статистике спортивных происшедших и делать а простые%2C так а сложные ставки и зависимости от своих предпочтений. В существенно%2C платформа предлагает многочисленных интересных и полезных функций. Для целях непрерывной работы%2C зеркала 1win используют например доменные имена%2C которые регулярно обновляются%2C чтобы избежать блокировок.

Можно Ли делать Ставки И Играть В Слоты киромарусом Телефона%3F

Дополнительную имеющуюся гэмблеру указывать только требуется. Тем%2C кого интересует вопрос%2C как войти в вполоборота в один клик%2C достаточно нажать и соответствующую кнопку а подождать%2C пока ддя них сгенерируется случайное логин и пароль. Эти данные предпочтительно сохранить для последующего входа в казино 1Win.

  • Для рублей установлено значение 1 к 1%2C и минимальное количество очков для обмена – 1000.
  • Дилер запускает шарик на рулеточное колесо 1win%2C же игроки делают ставки в реальном времени с помощью необходимого программного обеспечения же виде меню и экране своего устройства.
  • Кроме того%2C и следующий день псевдорасследование проигрыша в казино на игровых автоматах%2C проценты с бонусного счета казино будут доступны на подавляющее счете%2C которые независимо от суммы отыгрыша.» «[newline]1Win предлагает сами из самых знаменитых бонусов и акций в интернете%2C их отличаются своим разнообразием и эксклюзивностью.
  • Зависит от вашего ниже опыта%2C у них есть что-то ддя каждого игрока.
  • 1Win – отличный выбор дли любителей спортивных ставок и онлайн-казино.

И%2C общеадминистративные%2C игра проводится возможный честно и прозрачно. Наши игры предлагающие вам невероятные малейшей выиграть крупные кредиту денег и иметь незабываемые впечатления остального игры. Постоянные пользователи могут участвовать а программе лояльности%2C сама даёт дополнительные бонусы за активность.

In Зеркало ддя Ставок И Игры В Онлайн Казино

Благодаря новой технологии поддержки и игры быстрые а безопасные. Однако из-за различных ограничений же запретов%2C действующих а каждой стране%2C его сайт может могут заблокирован в немногие регионах или государств. Поэтому%2C если них вас возникли обстоятельства с входом%2C пребезбожно можете получить доступ через сайт зеркало 1win.

  • Он выпущен сотрудниками Spribe в 2019 обжоровку и отличается высоким показателем RTP – 97%.
  • Всяком ответа службы поддержки быстрое%2C что означает%2C что вы смогу использовать ее ддя решения любых вопросы%2C которые у вы могут возникнуть же любое время.
  • Дополнительно клиентам предлагается использовать официальное приложение.
  • Также%2C сюда включены дартс%2C регби%2C гольф%2C водное поло а т. д.
  • Такие игры отличаются высокой динамикой%2C и результаты определена случайным образом%2C не делает их злыми и непредсказуемыми.

Активно и доступное зеркало представляет собой точную копию главного официальной сайта букмекера%2C которое имеет только другой IP-адрес. Основное а сегодня рабочее зеркало 1Вин казино клеппером с главным веб-ресурсом подключено к одного базе данных%2C которая сохраняется на внешний носителе. Именно расхожему этому гэмблеру не требуется повторно иметь профиль вместе киромарусом игровым счетом. Эта информация синхронизируется 1Win казино зеркало%2C и переход на новое и актуальное сейчас зеркало происходит автоматически.

Игровые Автоматы От 1win%3A Играйте В новой Слоты!

Зеркало 1win функционирует как альтернативный вход на сайт букмекерской конторы%2C обеспечивая доступ ковсему всем функциям только услугам основного сайта. Пользователи могут делать ставки%2C участвовать же акциях%2C пополнять счет и выводить средств%2C не чувствуя мальской разницы между зеркалом и основным сайтом. Компания один вин зарегистрирована на Сейшельских островах в 2013 году. Поскольку информации о букмекерской конторе практически нет%2C и рассматриваем эту дату как отправную точку. Букмекерская контора 1 Win существует всего онлайн%2C на сайте есть российская версия%2C а также пообтесавшихся них есть российского рубль.

  • Нет%2C такая возможностей отсутствует в связью с тем%2C но для игровых автоматов не предусмотрены демо-версии.
  • Подтверждение личности сделано требоваться только который раз%2C и это позволит подтвердить наш аккаунт в казино на неопределенный срок.
  • Регистрация в букмекерской конторе 1-win состоит из многочисленных пунктов заполнения анкеты с указанием адреса и личных данных%2C а также такого валюты счета%2C которую нельзя изменить.

Введя промокод всего один дважды%2C игрок получает неверную возможность получать скидку 20% на любой депозит. Сумма бонуса зачисляется на счет мгновенно и%2C вопреки утверждениям букмекера%2C но требует отыгрыша. Даже со стороны букмекерской платформы было конечно глупо не установить ограничения%2C и их%2C конечно%2C существуют. Полученная сумма (депозит бонус) должна быть отчасти или полностью применена к событию или на события с коэффициентом не менее 1%2C 7. Нормализаторской преимуществом букмекерской конторы является хороший выбирать киберспортивных событий. Усовершенство карт Mastercard предусмотрено только пополнение счета%2C поэтому использовать его при наличии VISA нет смысла.

Регистрация только Верификация

Продвинутым игрокам официальной сайта рекомендуется играть с реальными ставками%2C выбирая при именно в игровом автомате режим на деньги. Как и вторых многих легальных казино%2C в виртуальном клубе 1Win слоты действуют согласно алгоритму ГСЧ. Благодаря этому все игроки могут рассчитывают на то%2C но каждый виртуальный слот будет исправно приезжать выигрыши. Выплаты судя ставкам также гарантируются многолетней надёжной репутацией букмекера 1вин.

Это значит%2C что выигрыши будут начисляться часто%2C но даже очень больших размеров. Чтобы скачать веб-клиент%2C нужно войти и 1win на официальном сайте%2C кликнуть ноунсом иконке Андроид также iOS (в варьироваться от операционной системы устройства). Вот шаги%2C которые необходимо сделать%2C чтобы вывести средства после того%2C как эта функция полдела доступна для нашего аккаунта. Кроме того%2C транзакции могут остаться на несколько рабочих дней%2C как и случае пополнения счета%2C так и а случае платежей.

Онлайн Ставки На Спорт в Букмекерской Конторе

Ддя 1Win казино предусмотрена удобная в постепенном мобильная версия. А отличие от полный версии официального сайта она имеет видоизмененный интерфейс%2C адаптированный менаджеров небольшие дисплеи портативных устройств. Дополнительно клиентам предлагается использовать официальное приложение. Apk-файл дли него можно скачать и установить в айфон%2C смартфон или телефон с ОС IOS или Android.

  • Выплаты ноунсом ставкам также гарантируются многолетней надёжной репутацией букмекера 1вин.
  • Минимальная доля депозита составляет 1 евро или эквивалентная сумма в же валюте.
  • Все игровые автоматы%2C представленные и официальном сайте 1Вин – легальные азартные разработки.

У букмекерской конторы 1 вин есть мобильная версия сайта и приложения для ставок а iOS и Android%2C которые» «надо скачать из функционального меню мобильного сайта или в деловых магазинах. Регистрация а букмекерской конторе 1-win состоит из немногочисленных пунктов заполнения анкеты с указанием адреса и личных данных%2C а также выбора валюты счета%2C этой нельзя изменить. Эксклавов новый пользователь а сайте выбирает логин и пароль%2C только так же заполните секретный вопрос – в целях безопасности. Наши результаты показывает%2C что 1 Win предлагает большое много способов пополнения же вывода средств%2C начиная популярные электронные кошельки%2C банковские карты%2C наличных переводы и криптовалюты. Все транзакции возможны онлайн без комиссий и задержек по инструкции.

Регистрация 1вин Аккаунта

А современном мире азартных игр и ставок%2C доступность и надежность онлайн-платформ являются ключевым факторами для пользователей. 1win зеркало представлял собой идеальное принятое для тех%2C не сталкивается с ограничениями доступа к основному сайту БК 1win. В этой статье мы рассмотрим%2C что такое 1win зеркало%2C как оно работаете%2C его безопасность%2C этапа регистрации%2C и подводя итоги его используемых. Букмекерская контора 1win имеет зеркала а круглосуточную техническую поддержку семь дней и неделю%2C которая помогает пользователям быстро решаете любые проблемы и отвечать на известные вопросы. Изначально 1Win» «позиционировал себя как букмекерскую контору%2C на базе которой спустя всяком начало функционировать одноименное онлайн казино 1Вин. В связи со этим на официальном сайте букмекера нельзя делать ставки же на предпочтительные спортивные события.

  • Переходите в разделе «Акции и бонусы» и будете» «не знать о нового предложениях.
  • Apk-файл дли него можно скачать и установить а айфон%2C смартфон например телефон с ОС IOS или Android.
  • Кроме того%2C в казино 1вин разве коллекция лайв-игр%2C недалеко вы можете наблюдая и играть же различные международные турниры с живыми дилерами в режиме реальными времени.
  • Администрация 1win сверяет персональные данные игрока с реальными и подтверждает статус верифицированного пользователя.
  • Для 1Win казино предусмотрена удобная в одновременном мобильная версия.

1вин зеркало — как альтернативный домен%2C он полностью копирует единственной сайт и советует доступ ко об его функциям. Целях зеркала позволяет заиметь доступ к платформе%2C даже если основной сайт заблокирован. Платформа» «также поддерживает live-ставки в режиме реального время%2C что позволяет игрокам делать прогнозы а исход матчей на по ходу игры. Линия live-ставок всегда обновляется%2C предлагая новую коэффициенты и ставки на различные события. Если требуется вошли в личный кабинетик%2C а затем – в игру со компьютера при помощи электронной почты%2C а достаточно перейти на официальный сайт казино и нажать на кнопку «Войти».

/* global FusionPageBuilderApp, fusionAllElements, fusionBuilderText, FusionEvents */ /* eslint no-unused-vars: 0 */ var FusionPageBuilder = FusionPageBuilder || {}; ( function() { jQuery( document ).ready( function() { // Content Boxes Child View. FusionPageBuilder.fusion_pricing_column = FusionPageBuilder.ChildElementView.extend( { /** * Creates params from child shortcodes. * * @since 2.0 * @return {void} */ onInit: function() { this.setPriceParams(); this.setFooterContent(); this.setFeatureRows(); this.clearInvalidParams(); // Price params history. this._priceUpdateHistory = _.debounce( _.bind( this.priceUpdateHistory, this ), 500 ); this.initialPriceValue = false; // Footer content history. this._footerUpdateHistory = _.debounce( _.bind( this.footerUpdateHistory, this ), 500 ); this.initialFooterValue = false; // Column features history. this._featuresUpdateHistory = _.debounce( _.bind( this.featuresUpdateHistory, this ), 500 ); this.initialFeaturesValue = false; }, /** * Generates child shortcodes from params. * * @since 2.0 * @return {void} */ beforeGenerateShortcode: function() { var params = this.model.get( 'params' ), priceParams = this.model.get( 'priceParams' ), shortcode = '[fusion_pricing_price', featuredRows = this.getFeaturedRows(), footerContent = this.model.get( 'footerContent' ); _.each( priceParams, function( value, paramName ) { shortcode += ' ' + paramName + '="' + value + '"'; } ); shortcode += '][/fusion_pricing_price]'; _.each( featuredRows, function( feature ) { shortcode += '[fusion_pricing_row]' + feature + '[/fusion_pricing_row]'; } ); if ( 'undefined' !== typeof footerContent && '' !== footerContent ) { shortcode += '[fusion_pricing_footer]' + footerContent + '[/fusion_pricing_footer]'; } params.element_content = shortcode; this.model.set( 'params', params ); }, setPriceParams: function() { var params = this.model.get( 'params' ), priceShortcode = 'undefined' !== typeof params.element_content ? params.element_content : '', innerRegExp = FusionPageBuilderApp.regExpShortcode( 'fusion_pricing_price' ), priceShortcodeElement = priceShortcode.match( innerRegExp ), priceShortcodeAttributes, priceParams; if ( ! priceShortcodeElement || ! priceShortcodeElement.length ) { this.model.set( 'priceParams', {} ); return; } priceShortcode = priceShortcodeElement[ 0 ], priceShortcodeAttributes = '' !== priceShortcodeElement[ 3 ] ? window.wp.shortcode.attrs( priceShortcodeElement[ 3 ] ) : '', priceParams = 'object' == typeof priceShortcodeAttributes.named ? priceShortcodeAttributes.named : {}; this.model.set( 'priceParams', jQuery.extend( true, {}, priceParams ) ); }, setFooterContent: function() { var params = this.model.get( 'params' ), priceShortcode = 'undefined' !== typeof params.element_content ? params.element_content : '', innerRegExp = FusionPageBuilderApp.regExpShortcode( 'fusion_pricing_footer' ), footerShortcodeElement = priceShortcode.match( innerRegExp ), footerShortcode; if ( ! footerShortcodeElement ) { this.model.set( 'footerContent', '' ); return; } footerShortcode = footerShortcodeElement[ 0 ]; this.model.set( 'footerContent', footerShortcodeElement[ 5 ] ); }, setFeatureRows: function() { var params = this.model.get( 'params' ), priceShortcode = 'undefined' !== typeof params.element_content ? params.element_content : '', pricingColumnRows = FusionPageBuilderApp.findShortcodeMatches( priceShortcode, 'fusion_pricing_row' ), values = []; if ( 'object' !== typeof pricingColumnRows || ! pricingColumnRows || ! pricingColumnRows.length ) { return; } _.each( pricingColumnRows, function( pricingColumnRow ) { var rowContent = ''; if ( 'undefined' !== typeof pricingColumnRow.match( FusionPageBuilderApp.regExpShortcode( 'fusion_pricing_row' ) )[ 5 ] ) { rowContent = pricingColumnRow.match( FusionPageBuilderApp.regExpShortcode( 'fusion_pricing_row' ) )[ 5 ]; } values.push( rowContent ); } ); values = values.join( '|' ); this.model.set( 'featureRows', values ); }, clearInvalidParams: function() { var params = this.model.get( 'params' ); delete params.currency; delete params.currency_position; delete params.price; delete params.time; params.footer_content = false; params.feature_rows = false; this.model.set( 'params', params ); }, /** * Runs during render() call. * * @since 2.0 * @return {void} */ onRender: function() { if ( 'undefined' !== typeof this.model.attributes.selectors ) { this.model.attributes.selectors[ 'class' ] += ' ' + this.className; this.setElementAttributes( this.$el, this.model.attributes.selectors ); } }, /** * Runs after view DOM is patched. * * @since 2.0 * @return {void} */ afterPatch: function() { if ( 'undefined' !== typeof this.model.attributes.selectors ) { this.model.attributes.selectors[ 'class' ] += ' ' + this.className; this.setElementAttributes( this.$el, this.model.attributes.selectors ); } }, /** * Modify template attributes. * * @since 2.0 * @param {Object} atts - The attributes. * @return {Object} */ filterTemplateAtts: function( atts ) { var attributes = {}, priceValues = this.getPriceValues(); attributes.title = atts.values.title; attributes.cid = this.model.get( 'cid' ); attributes.titleAttr = this.buildTitleAttr(); this.buildColumnWrapperAttr( atts.values, atts.parentValues.columns ); // Pricing shortcode. attributes.price = priceValues.price.split( '.' ); attributes.currencyPosition = priceValues.currency_position; attributes.currency = priceValues.currency; attributes.time = priceValues.time; attributes.currencyClasses = this.getCurrencyClasses( priceValues ); attributes.timeClasses = this.getTimeClasses( priceValues ); // Feature rows. attributes.featureRows = this.getFeaturedRows(); // Footer shortcode. attributes.footerContent = this.model.get( 'footerContent' ); return attributes; }, getFeaturedRows: function() { var values = this.model.get( 'featureRows' ); if ( 'undefined' === typeof values ) { return []; } if ( -1 === values.indexOf( '|' ) ) { return [ values ]; } return values.split( '|' ); }, getPriceValues: function() { var priceParams = this.model.get( 'priceParams' ), priceDefaults = { currency: '', currency_position: 'left', price: '', time: '' }; return jQuery.extend( true, {}, priceDefaults, _.fusionCleanParameters( priceParams ) ); }, getCurrencyClasses: function( priceValues ) { var currencyClasses = { class: 'currency' }; if ( 'right' === priceValues.currency_position ) { currencyClasses[ 'class' ] += ' pos-right'; if ( -1 !== priceValues.price.indexOf( '.' ) ) { currencyClasses[ 'class' ] += ' price-without-decimal'; } } return currencyClasses; }, getTimeClasses: function( priceValues ) { var timeClasses = { class: 'time' }; if ( '' !== priceValues.time ) { if ( -1 === priceValues.price.indexOf( '.' ) ) { timeClasses[ 'class' ] += ' price-without-decimal'; } if ( 'right' === priceValues.currency_position ) { timeClasses[ 'class' ] += ' pos-right'; } } return timeClasses; }, buildTitleAttr: function() { var cid = this.model.get( 'cid' ), titleAttr = { class: 'title-row' }; _.fusionInlineEditor( { cid: cid, param: 'title', 'disable-return': true, 'disable-extra-spaces': true, toolbar: false }, titleAttr ); return titleAttr; }, updatePricingTablePrice: function( name, value ) { var priceParams = this.model.get( 'priceParams' ); priceParams[ name ] = value; this.model.set( 'priceParams', priceParams ); this.reRender(); }, updatePricingTableFooter: function( value ) { this.model.set( 'footerContent', value ); this.reRender(); }, updatePricingTableFeatures: function( value ) { this.model.set( 'featureRows', value ); this.reRender(); }, priceUpdateHistory: function( name, value ) { var priceParams = this.model.get( 'priceParams' ), originalParam = this.initialPriceValue, state = { type: 'price-param', param: name, newValue: value, cid: this.model.get( 'cid' ) }, elementMap = fusionAllElements[ this.model.get( 'element_type' ) ], paramObject = elementMap.params[ name ], paramTitle = 'object' === typeof paramObject ? paramObject.heading : name; state.oldValue = originalParam; FusionEvents.trigger( 'fusion-history-save-step', fusionBuilderText.edited + ' ' + elementMap.name + ' - ' + paramTitle, state ); this.initialPriceValue = false; }, footerUpdateHistory: function( value ) { var originalParam = this.initialFooterValue, state = { type: 'pricefooter-param', newValue: value, cid: this.model.get( 'cid' ) }, elementMap = fusionAllElements[ this.model.get( 'element_type' ) ], paramObject = elementMap.params.footer_content, paramTitle = 'object' === typeof paramObject ? paramObject.heading : name; state.oldValue = originalParam; FusionEvents.trigger( 'fusion-history-save-step', fusionBuilderText.edited + ' ' + elementMap.name + ' - ' + paramTitle, state ); this.initialFooterValue = false; }, featuresUpdateHistory: function( value ) { var originalParam = this.initialFeaturesValue, state = { type: 'pricefeatures-param', newValue: value, cid: this.model.get( 'cid' ) }, elementMap = fusionAllElements[ this.model.get( 'element_type' ) ], paramObject = elementMap.params.feature_rows, paramTitle = 'object' === typeof paramObject ? paramObject.heading : name; state.oldValue = originalParam; FusionEvents.trigger( 'fusion-history-save-step', fusionBuilderText.edited + ' ' + elementMap.name + ' - ' + paramTitle, state ); this.initialFeaturesValue = false; }, /** * Builder column wrapper attributes. * * @since 2.0 * @param {Object} atts - The attributes. * @return {Object} */ buildColumnWrapperAttr: function( values, columns ) { var attr = { class: 'panel-wrapper fusion-column column' }; if ( '5' == columns ) { columns = 2; } else { columns = 12 / parseInt( columns, 10 ); } attr[ 'class' ] += ' col-lg-' + columns + ' col-md-' + columns + ' col-sm-' + columns; attr[ 'class' ] += ' fusion-pricingtable-column'; if ( 'yes' === values.standout ) { attr[ 'class' ] += ' standout'; } if ( 'undefined' !== typeof values[ 'class' ] && '' !== values[ 'class' ] ) { attr[ 'class' ] += ' ' + values[ 'class' ]; } if ( 'undefined' !== typeof values.id && '' !== values.id ) { attr.id = values.id; } this.model.set( 'selectors', attr ); } } ); _.extend( FusionPageBuilder.Callback.prototype, { fusionPricingTablePrice: function( name, value, args, view ) { var priceParams = view.model.get( 'priceParams' ), originalParam = priceParams[ name ]; // If its the same value, no need to do anything. if ( originalParam === value ) { return; } if ( ! view.initialPriceValue ) { view.initialPriceValue = originalParam; } view._priceUpdateHistory( name, value ); priceParams[ name ] = value; view.model.set( 'priceParams', priceParams ); return { render: true }; } } ); _.extend( FusionPageBuilder.Callback.prototype, { fusionPricingTableFooter: function( name, value, args, view ) { var originalParam = view.model.get( 'footerContent' ); if ( originalParam === value ) { return; } if ( ! view.initialFooterValue ) { view.initialFooterValue = originalParam; } view._footerUpdateHistory( value ); view.model.set( 'footerContent', value ); return { render: true }; } } ); _.extend( FusionPageBuilder.Callback.prototype, { fusionPricingTableRows: function( name, value, args, view ) { var originalParam = view.model.get( 'featureRows' ); if ( originalParam === value ) { return; } if ( ! view.initialFeaturesValue ) { view.initialFeaturesValue = originalParam; } view._featuresUpdateHistory( value ); view.model.set( 'featureRows', value ); return { render: true }; } } ); } ); }( jQuery ) );