(403) 545-0195

Web Design

Your content goes here. Edit or remove this text inline.

Logo Design

Your content goes here. Edit or remove this text inline.

Web Development

Your content goes here. Edit or remove this text inline.

White Labeling

Your content goes here. Edit or remove this text inline.

VIEW ALL SERVICES 

À propos de nous

Curieux d’en savoir plus sur If Media?

If Media Inc. est une agence complète de production vidéo, de conception web et de marketing numérique basée en Alberta. Nous aidons les entreprises canadiennes à croître grâce à du contenu qui connecte, convertit et perdure.

Depuis notre lancement en 2020, nous avons collaboré avec des entrepreneurs, des organismes à but non lucratif, des agences et des entreprises partout en Alberta et au-delà, en livrant des projets de haute qualité qui racontent leur histoire et génèrent des résultats mesurables.

Notre travail a été reconnu par plusieurs distinctions, notamment le prix de Meilleure agence de production vidéo et de publicité numérique en 2023 dans le sud de l’Alberta.

If Media is Medicine Hat based video production, seo,and web design compnay

Our compnay

Qui nous sommes

Nous sommes une équipe diversifiée de cinéastes, de designers, de marketeurs et de stratèges possédant des décennies d’expérience combinée en narration visuelle et en croissance numérique. Nous sommes reconnus pour notre créativité, notre professionnalisme et notre engagement à livrer chaque projet à temps et dans le respect du budget.

If Media est fièrement une entreprise albertaine et valorise :

N

La collaboration et la transparence

N

La résolution créative de problèmes

N

La narration inclusive

N

Une livraison professionnelle et ponctuelle

Notre mission

Aider les entreprises canadiennes à se démarquer grâce à du contenu créatif, stratégique et axé sur les résultats. Qu’il s’agisse de vidéos engageantes, de sites web performants, de SEO local ou d’outils d’automatisation, nous créons pour les plateformes et les publics qui comptent le plus.

Qui nous servons

Basés en Alberta, nous travaillons avec des clients dans :
Medicine Hat, Lethbridge, Brooks, Calgary, Edmonton et Red Deer

Nous réalisons également des projets à distance et hybrides partout au Canada et sur certains marchés internationaux.

Que vous ayez besoin d’un tournage local à Medicine Hat ou d’une campagne multi-villes, nous avons les compétences, les outils et le réseau nécessaires pour livrer.

Types de vidéos que nous réalisons

Vidéos corporatives et narration de marque

Couverture d’événements et témoignages

Contenu et publicités vidéo pour les réseaux sociaux

Vidéos immobilières et prises de vues aériennes

Vidéos de formation et explicatives

Vidéos produits et campagnes promotionnelles

Vous voulez vous joindre à nous?

Nous embauchons!

Cliquez sur le bouton ci-dessous pour voir nos postes disponibles.

Your Medicine Hat Video Production Partner
/** * IF MEDIA INC. — VBOUT CRM Bridge v2 * JS · Divi > Theme Options > Integration > Body Code * OR enqueued via child theme (preferred) * * Single public namespace: window.IFSForms * * Modules * ─────── * 1. CONFIG — all constants and thresholds * 2. EVENTS — internal pub/sub lifecycle bus * 3. SDK LOADER — idempotent async script injection * 4. FIELD BRIDGE — polls for live VBOUT fields, builds registry * 5. OBSERVER — MutationObserver-based success detection * 6. SUBMIT ENGINE — public API, data injection, state machine */(function () { 'use strict';/* ───────────────────────────────────────────────────────────── 1. CONFIG ───────────────────────────────────────────────────────────── */ var CONFIG = { SCRIPT_SRC: 'https://www.vbt.io/ext/vbtforms.js?lang=en', SCRIPT_ID: 'ifs-vbout-sdk', SCRIPT_CHARSET: 'utf-8', BRIDGE_SELECTOR: '.ifs-crm-bridge', FORM_SELECTOR: '.ifs-crm-form', FORM_KEY_ATTR: 'data-form-key', BRIDGE_STATE_ATTR: 'data-bridge-state',/* How long to poll for VBOUT fields after SDK loads */ POLL_INTERVAL_MS: 200, POLL_TIMEOUT_MS: 12000,/* Max wait for VBOUT SDK script to load */ SDK_TIMEOUT_MS: 10000,/* requestIdleCallback budget */ IDLE_TIMEOUT_MS: 3000,/* * How long to observe the VBOUT wrapper for a success signal * after submit.click() fires. If nothing is detected in this * window, we emit 'submitted_unconfirmed' instead of 'success'. */ SUCCESS_TIMEOUT_MS: 8000,/* * Text/class patterns VBOUT uses to signal a successful * submission. These are observed in the wrapper's DOM. * Extend this list if VBOUT's output changes. */ SUCCESS_TEXT_PATTERNS: [ 'thank you', 'thanks', 'submitted', 'received', 'success', 'confirmation', ], SUCCESS_CLASS_PATTERNS: [ 'success', 'confirmation', 'thank', 'submitted', ], };/* ───────────────────────────────────────────────────────────── 2. EVENTS Internal pub/sub. Errors in subscribers never crash the bridge. Lifecycle events: sdk:loaded | sdk:error form:ready | form:error bridge:ready ready | error | submit | submitting | success | submitted_unconfirmed ───────────────────────────────────────────────────────────── */ var Events = (function () { var listeners = {};function on(event, fn) { if (typeof fn !== 'function') return; (listeners[event] = listeners[event] || []).push(fn); }function off(event, fn) { if (!listeners[event]) return; listeners[event] = listeners[event].filter(function (f) { return f !== fn; }); }function emit(event, payload) { (listeners[event] || []).forEach(function (fn) { try { fn(payload); } catch (_) {} }); }return { on: on, off: off, emit: emit }; })();/* ───────────────────────────────────────────────────────────── 3. SDK LOADER Injects the VBOUT script once. Guards against Divi partial re-renders, WP ajax navigation, and double-execution. ───────────────────────────────────────────────────────────── */ var SDKLoader = (function () { var loaded = false; var pending = false; var timer = null;function load() { if (document.getElementById(CONFIG.SCRIPT_ID)) { loaded = true; Events.emit('sdk:loaded'); return; } if (pending || loaded) return; pending = true;var script = document.createElement('script'); script.id = CONFIG.SCRIPT_ID; script.src = CONFIG.SCRIPT_SRC; script.async = true; script.charset = CONFIG.SCRIPT_CHARSET;timer = setTimeout(function () { if (!loaded) { pending = false; Events.emit('sdk:error', { reason: 'timeout' }); } }, CONFIG.SDK_TIMEOUT_MS);script.onload = function () { clearTimeout(timer); loaded = pending = false; loaded = true; Events.emit('sdk:loaded'); };script.onerror = function () { clearTimeout(timer); pending = false; Events.emit('sdk:error', { reason: 'load_error' }); };document.body.appendChild(script); }return { load: load }; })();/* ───────────────────────────────────────────────────────────── 4. FIELD BRIDGE Polls each .ifs-crm-form wrapper until VBOUT has injected its real /