TotalApp Docs

Real Estate — Property Marketing

Virtual Tour & Drone Filming, Home Staging, and Featured Listing Packages — listing media production and paid placement tracking.

Overview

The Property Marketing sub-group covers the three ways a listing gets made ready to sell or lease: shooting real media (Virtual Tour & Drone Filming), staging the physical or virtual space (Home Staging), and paying for portal placement (Featured Listing Packages). All three reference Property from the Catalog via a Sub-Resource-Lookup combobox.

Screen preview

A quick look at the screen. Use the toggle in the corner to switch between the dark and light themes.

app.totalapp.app/real-estate/virtual-tours
Listing media
SHOOT-2026-0210 — 3D tour + droneShoot in 3 days
Home staging — Villa 12In progress
Featured package — PremiumLive · 14 days left
Matterport URLValid

Virtual tours, staging and featured listings

1. Virtual Tour & Drone Filming

Purpose: Tracks 3D virtual tour / drone media shoot orders for listings. Order codes follow SHOOT-YYYY-####.

Media packages

Package
Full 3D Tour + 4K Drone
360° Panorama Only
Drone Only
Photography Only

Status pipeline & shoot countdown

Ordered → Shoot Scheduled → Raw Uploaded → Approved & Linked. While a shoot is still pending (Ordered or Shoot Scheduled), a days-until-shoot countdown shows red at ≤3 days, amber at ≤7 — the same date-math pattern used across the add-on’s other countdowns. The countdown stops being shown as urgent once footage is uploaded or the shoot is fully linked.

Real URL-format validation

The Matterport URL and Drone Video URL fields get a real, deterministic client-side check: the value is parsed with new URL() and its hostname is tested against a recognized-host list (matterport.com for the tour URL; youtube.com / youtu.be / vimeo.com for the drone video). Each field shows a badge: Valid, Unrecognized Host, or Invalid. This is format/host validation only — there is no live reachability or embed-availability check against the actual tour/video host.

On approval: publishes media links to the Catalog

When a shoot’s status transitions into Approved & Linked, saving automatically writes both URLs onto the matching property in the Property & Units Catalog — the same explicit-helper-on-status-transition pattern used by Mortgage Advisory and Property Valuation.

2. Home Staging

Purpose: Tracks physical furniture-rental or virtual AI-staging jobs for a listing.

Staging type

  • Physical Furniture Rental — interior designer, rental duration in days, furniture inventory list.
  • Virtual AI Staging — a virtual rendering link field instead of physical logistics.

Status pipeline

Consultation → Furniture in Transit → Staged → Dismantled.

Fields

  • Total Cost, Before/After Photo Count.
  • Estimated Value Impact % — a manually entered field, not a computed prediction.
  • Decorator Notes, Notes.

3. Featured Listing Packages

Purpose: Tracks paid "boost"/"featured" placements purchased on listing portals. Boost codes follow BST-YYYY-####.

Portals

Portal
Sahibinden Doping
Hepsiemlak Vitrin (Showcase)
Zingat Rozet (Badge)
Meta / Instagram Sponsored

Campaign countdown & progress bar

endDate is always derived from startDate + durationDays — never edited independently, and recomputed whenever either input changes in the form. Each active campaign shows a progress bar (percentage of durationDays elapsed since startDate, clamped 0–100%) plus a days-remaining countdown using the same red/amber urgency thresholds (≤3 days red, ≤7 amber) as Virtual Tour & Drone Filming’s shoot countdown.

Stat chips

The stat chips above the table (total active/scheduled spend, active boost count, count expiring within 7 days) are honest local-data aggregations only. There is no ad-platform integration in this codebase, so no click, impression, or conversion numbers are fabricated or estimated.

Renew

The Renew action is pure CRUD, not a payment flow: it resets startDate to today, adds the renewal spend onto the existing spendAmount, recomputes endDate, and sets status back to Active via the normal save call — no separate cross-store helper, no external billing.

AI Assistant

Virtual Tour & Drone Filming, Home Staging and Featured Listing Packages each have their own embedded AI Assistant panel, scoped to that screen’s own records.

  • Virtual Tour & Drone Filming — surfaces orders stuck in Raw Uploaded awaiting approval and flags unusually high-cost shoot orders.
  • Home Staging — surfaces projects with the highest estimated listing value impact and flags unusually high-cost projects.
  • Featured Listing Packages — surfaces active boosts nearing their end date and breaks down spend by portal and status.

All three support Save as Report and Add Knowledge, and operate on the whole visible ledger rather than a row selection.

Frequently Asked Questions

Does the URL validation on Virtual Tour & Drone Filming check that the video/tour actually works?
No — it only checks the URL is well-formed and its hostname matches a recognized service (Matterport, YouTube, Vimeo). It does not fetch the URL or verify the media plays.
Where do the media links end up after a shoot is approved?
On the matching property record in the Property & Units Catalog — the Matterport and drone video URLs are written there automatically on the Approved & Linked transition.
Are the Featured Listing spend numbers real ad-spend from the portals?
They’re whatever the brokerage manually enters when creating or renewing a boost — there is no live billing or reporting integration with Sahibinden, Hepsiemlak, Zingat, or Meta in this codebase.
Does renewing a Featured Listing charge a card automatically?
No — Renew is a local data operation (reset dates, add spend, set status Active). It does not trigger any payment.
Is the Estimated Value Impact % on Home Staging a real prediction?
No — it’s a manually entered figure (e.g. the stager’s own estimate), not a computed or modeled prediction.