Event Agency Website Development on 1C-Bitrix
An event agency sells emotions, but the buyer makes decisions rationally: looks at portfolio, calculates budget, evaluates team. The website must simultaneously inspire with photos and videos from past events and provide a concrete tool for calculation — a calculator that shows budget order in 2 minutes. On 1C-Bitrix, this is implemented through information blocks with heavy media content, custom calculator based on catalog properties, and detailed brief form.
Event Portfolio
Portfolio is the main selling block. "Portfolio" information block with sections by event types:
- Corporate events (team building, New Year, company anniversary)
- Weddings
- Conferences and forums
- Festivals and city events
- Private parties
Portfolio element properties:
- Type (section binding)
- Guest Count (number)
- Venue (string): name and city
- Event Date (date)
- Photo Gallery (multiple file property): 20-50 photos per case
-
Video (string): YouTube/Vimeo link, embed via
<iframe> - Client Testimonial (HTML text): name, position, text
- Services (element binding): connection to "Services" information block — what specifically was done
- Tags (multiple string): for cross-filtering ("outdoor registration", "tent", "live music")
Case detail page is built as longform: large cover, facts block (guests, venue, date), photo gallery in masonry layout (CSS Grid + Lightbox), video, testimonial. Bottom — "Similar Events" block via bitrix:news.list with section filter.
For catalog page — tile layout with event type filtering (AJAX, bitrix:catalog.smart.filter). Each tile — cover photo, type, guest count, year.
Services Catalog
"Services" information block with sections:
- Organization — concept, scenario, coordination
- Decor and Design — floristry, lighting, banners
- Catering — menu, service, bar
- Technical Support — sound, light, stage, screens
- Entertainment — host, artists, shows
- Photo and Video — shooting, editing, photo booth
Each service is an element with description, icon, and binding to event types where it's relevant. Service page — detailed process description, photo examples from portfolio (automatic selection of cases where this service was used).
Organizing Team
"Team" information block — cards of key staff: photo, name, position, specialization (weddings, corporate), experience (number of events conducted), brief description. On homepage — slider with three leading organizers. On separate page — full team with specialization filtering.
Blog
Standard information block with categories: event ideas, trends, behind-the-scenes stories, checklists. SEO-valuable section bringing organic traffic on queries like "how to organize corporate event for 200 people" or "wedding decoration trends 2026".
Component bitrix:news.list with pagination, sidebar with popular articles (sorted by SHOW_COUNTER), tags for cross-linking.
Brief Form for Inquiry
Comprehensive requirement collection form, built on bitrix:form.result.new or custom component with step-by-step interface (wizard):
Step 1 — General:
- Event type (list)
- Date (calendar)
- Guest count (number)
- City
Step 2 — Details:
- Venue needed (yes/no → if yes, preferences: restaurant, loft, open-air, tent)
- Catering needed
- Entertainment (checkboxes: host, live music, DJ, show program)
- Decor and design
Step 3 — Budget & Contact:
- Approximate budget (range from list)
- File (upload brief, references, moodboard — up to 10 files, 20 MB each)
- Name, phone, email, messenger
Data is saved to "Inquiries" Highload block and duplicated to manager email. If Bitrix24 connected — inquiry creates lead via REST API with filled fields.
Event Cost Calculator: Deep-Dive
Calculator is a compromise between "leave your inquiry, we'll call" and price list publication. Visitor gets estimated budget, agency gets warmed lead with specific parameters.
Operating Principle
Calculator doesn't show exact amount (event services are too variable). It provides a range: "from X to Y" — lower bound for basic package, upper for premium.
User sequentially selects parameters, each step affects final range:
Step 1 — Event Type. Determines base service set and coefficients. Corporate includes organization + host + sound by default. Wedding — organization + coordinator + decor.
Step 2 — Guest Count. Affects catering (proportionally), venue rental (thresholds: up to 50, 50-100, 100-200, 200+), service staff quantity.
Step 3 — Venue. Options: own venue (0), restaurant, loft, country complex, open-air with tent. Each option has price range depending on guest count.
Step 4 — Services. Checkboxes: decor (basic / extended / premium), catering (cocktail / banquet / BBQ), entertainment (host, DJ, live music, show), photo (1 photographer / 2 photographers + videographer).
Step 5 — Result. Final range with breakdown by items.
Technical Implementation
Calculator data stored in "Calculator Parameters" Highload block (CalcParamsTable):
| Field | Type | Example |
|---|---|---|
| UF_EVENT_TYPE | List | Corporate |
| UF_SERVICE | List | Catering — banquet |
| UF_GUESTS_MIN | Number | 50 |
| UF_GUESTS_MAX | Number | 100 |
| UF_PRICE_MIN | Number | 2500 (per guest) |
| UF_PRICE_MAX | Number | 5000 (per guest) |
| UF_IS_PER_GUEST | Boolean | Yes |
| UF_COEFFICIENT | Number | 1.0 |
Calculation runs on server: when parameter changes, frontend sends AJAX request with current selections. D7 controller selects matching Highload rows, sums ranges by formula:
For services with UF_IS_PER_GUEST = true: (UF_PRICE_MIN * guest count) — (UF_PRICE_MAX * guest count).
For fixed: UF_PRICE_MIN — UF_PRICE_MAX.
Total — sum of all selected services.
Server calculation chosen deliberately: client-side JavaScript with prices in code is public price list that could leak to competitors. Server logic returns only final range.
Result and Conversion
Result page displays:
- Overall budget range in large font
- Breakdown by items (table): venue, catering, decor, entertainment, photo/video, organization
- Suitable cases from portfolio (automatic selection by event type and similar guest count)
- "Get exact quote" form — name, phone, email
On form submission, CRM receives lead with full calculator parameters: manager calls not with "what do you need?" but with ready offer "for your 150-person corporate event in loft we offer...".
Calculation parameters saved in cookie and in Highload block (for authorized). On return to site, calculator restores last calculation.
Administration
Agency manager manages price ranges through Bitrix admin panel: Highload block with filtering by event type and service. Price change doesn't require programmer — just edit UF_PRICE_MIN and UF_PRICE_MAX values in corresponding row.
Stages and Timeline
| Stage | What We Do | Timeline |
|---|---|---|
| Analysis | Service catalog, event types, calculator logic | 5–7 days |
| Design | Prototypes, information block structure, calculation formulas | 7–10 days |
| UI Design | Mockups (portfolio, calculator, brief), animations | 10–14 days |
| Portfolio & Catalog | Information blocks, detail pages, filtering | 10–12 days |
| Calculator | Highload, calculation controller, frontend wizard | 10–14 days |
| Brief Form & Integrations | Step-by-step form, CRM, email notifications | 5–7 days |
| Content & Launch | Portfolio population, testing, deployment | 7–10 days |
Total Timeline — 8–11 weeks. Portfolio population (photos, videos, case descriptions) runs parallel with development. More cases ready at launch, higher conversion from day one.







