Title: PaintClarity
Author: paintops
Published: <strong>29 يوليو، 2026</strong>
Last modified: 22 سبتمبر، 2026

---

البحث عن الإضافات

![](https://ps.w.org/paintops/assets/banner-772x250.png?rev=3692081)

![](https://ps.w.org/paintops/assets/icon-256x256.png?rev=3692081)

# PaintClarity

 بواسطة [paintops](https://profiles.wordpress.org/paintops/)

[تنزيل](https://downloads.wordpress.org/plugin/paintops.1.2.057.zip)

 * [تفاصيل](https://ar.wordpress.org/plugins/paintops/#description)
 * [المراجعات](https://ar.wordpress.org/plugins/paintops/#reviews)
 *  [التنصيب](https://ar.wordpress.org/plugins/paintops/#installation)
 * [التطوير](https://ar.wordpress.org/plugins/paintops/#developers)

 [الدعم](https://wordpress.org/support/plugin/paintops/)

## الوصف

**PaintClarity turns your WordPress site into the back office for your painting 
business.** _(PaintClarity was formerly known as PaintOps. Same plugin, same team,
same data.)_ Build professional quotes, send them to customers who can view, e-sign,
and pay a deposit online, schedule crews on a calendar, track every job from lead
to invoice, and, on Pro, see your real profit per job, per crew, and per worker.

It was built by a painter, for painters. The quote builder understands painting 
scope: interior/exterior components, standard inclusions and exclusions, and the
disclaimer language that keeps you out of disputes. Your data lives in your own 
WordPress database, not locked inside someone else’s SaaS.

#### Quote to invoice, start to finish

 * **Quotes, estimates & bids**: a scope-aware builder with reusable inclusions/
   exclusions, itemized or lump-sum pricing, printable output, and email delivery.
 * **A professional customer page**: your customer opens a clean, branded page (
   your logo, your terms & conditions) and accepts by typing their name, an e-signature-
   grade record with timestamp. They can also decline with a reason, or ask a question,
   and you’re notified either way.
 * **Acceptance converts the quote to a job automatically**, whether they paid a
   deposit online or you shook hands, and a “Mark as Won” button covers the phone
   call.
 * **Invoices**: numbered invoices for the balance (full or partial), emailed or
   shared by link, payable online (Pro + Stripe) or marked paid for check/cash, 
   with the payment logged so balances always agree.
 * **Receivables at a glance**: unpaid invoices surface on your dashboard with amounts
   and age.

#### Running the work

 * **Scheduling calendar** with crew filtering, worker badges, time-off, and a subscribe
   link for Google/Apple/Outlook. Add your own recurring holiday labels.
 * **Crews**: group your painters into named, colored crews; staff a job with one
   tap and filter the calendar and reports by crew.
 * **Job board / pipeline**: Quote  Active  Completed, plus a lost-leads drawer 
   with the customer’s decline reason so you can revive the ones worth re-working.
 * **A real app for your painters**: install-to-home-screen (PWA), a “My Jobs” home,
   one-tap directions (Google/Apple/Waze), per-job check-in/out that works offline
   and syncs, photo/receipt/note logging, a “My Hours” view of their own time and
   pay, and a “Mark Job Complete” button that notifies the office. Workers see only
   what their permissions allow, never your numbers.
 * **Customers**: a directory with contact details, lifetime value, job history,
   and **multiple service addresses per customer**, built for landlords, realtors,
   property managers, and GCs whose one account means a dozen properties.
 * **Before/After photos** with camera alignment overlay and a compare slider.
 * **Color Visualizer**: load a photo of the house or the room, select the surface,
   and turn a color wheel until it is the color you are proposing. The wall changes
   color and keeps its own shading, grain and texture. Select by fill, by matching
   color, or by dragging a box over a big flat wall. Handles stucco, siding, brick,
   concrete block and interior drywall, takes the Sherwin-Williams or Benjamin Moore
   number alongside it, and prints or saves the render for the customer. Runs entirely
   in your browser: no photo is uploaded anywhere.
 * **Trade calculators, paint-color tracking, and resource links.**
 * **A choice of visual themes** (light, dark, industrial, and more) with a modern
   app-style navigation bar on desktop and phone.

#### What Pro adds

 * **Job financials & profitability**: costs, materials, labor hours; gross, expenses,
   profit, and margin per job; a Profits dashboard with profit-by-classification,
   profit-per-hour rankings, and **profit by crew and by worker** (allocated by 
   logged hours).
 * **Expenses & receipts** against any job, plus business-level and vehicle expense
   tracking for tax time.
 * **Online payments**: deposits on quote acceptance and invoice balances through
   Stripe Checkout, recorded automatically.
 * **AI tools (bring your own OpenAI key)**: estimate dimensions, gallons, and a
   Description of Work from a photo; scan receipts to auto-fill expenses; get feedback
   on or a rewrite of your quote wording.

Pro is a paid upgrade handled through Freemius. The free plugin is fully functional
on its own; Pro is optional.

### Bundled artwork

The four ready-made logos offered under Business > Logo URL (assets/img/logos/) 
are AI-generated original artwork created for this plugin. They carry no third-party
rights and are distributed under the same GPLv2-or-later license as the rest of 
the plugin. They are optional, off by default, and carry no PaintClarity branding
or link.

### External services

This plugin can connect to the following third-party services. Some are optional
and only run when you enable and configure the corresponding feature.

**OpenAI (Pro AI features, optional).** When you use an AI feature (Photo Estimate,
Receipt Scan, Description-of-Work Feedback or Rewrite), the plugin sends the relevant
input, the photo you choose to upload and/or the quote text you are working on, 
to the OpenAI API using **your own** OpenAI API key, and receives the generated 
result. No data is sent unless you click one of these buttons. PaintClarity does
not store the photo. Requests go to https://api.openai.com. See OpenAI’s Terms (
https://openai.com/policies/terms-of-use) and Privacy Policy (https://openai.com/
policies/privacy-policy).

**Stripe (Pro online payments, optional).** If you enable card payments and a customer
pays online, the plugin creates a Stripe Checkout session and verifies Stripe’s 
webhook using your own Stripe keys. Order/amount details are exchanged with Stripe
to process the payment. Requests go to https://api.stripe.com. See Stripe’s Services
Agreement (https://stripe.com/legal/ssa) and Privacy Policy (https://stripe.com/
privacy).

**Google Maps Platform (optional).** If you add a Google Maps API key, address fields
use Google Places/Geocoding for autocomplete and validation, and job locations may
be shown on an embedded map. The address text you type is sent to Google to return
suggestions. Requests go to https://maps.googleapis.com and related Google Maps 
endpoints. See Google’s Terms (https://cloud.google.com/maps-platform/terms) and
Privacy Policy (https://policies.google.com/privacy). (One-tap turn-by-turn Directions
for your crew use keyless map links and need no API key.)

**YouTube and Vimeo (Resources page video embeds, optional).** The Resources page(
staff-facing, inside your admin area) lets you save links to training videos, and
seeds a starter list of publicly available painting tutorials on YouTube. When a
staff member clicks a saved YouTube or Vimeo link’s play button, the video is embedded
on the page via the provider’s standard embed player (www.youtube.com / player.vimeo.
com), which loads content from that provider and is subject to its terms; no data
is sent until the play button is clicked, and you can delete any or all saved links.
See YouTube’s Terms (https://www.youtube.com/t/terms) and Google’s Privacy Policy(
https://policies.google.com/privacy), and Vimeo’s Terms (https://vimeo.com/terms)
and Privacy Policy (https://vimeo.com/privacy).

**Freemius (licensing & updates).** PaintClarity uses the Freemius SDK to manage
Pro licenses, deliver Pro updates, and (optionally) collect anonymous usage diagnostics
you can opt out of. Site and license information is exchanged with Freemius. See
Freemius’s Terms (https://freemius.com/terms/) and Privacy Policy (https://freemius.
com/privacy/).

You control every one of these by whether you enter the corresponding API key and
enable the feature. With no keys entered, PaintClarity runs entirely on your own
site.

### Privacy

Your customers’ details live in your own WordPress database. PaintClarity’s author
never sees them, and nothing is sent to a PaintClarity server. That also means you,
not the plugin, are the one a customer asks when they want to know what you hold
about them, so the plugin’s job is to make sure you can answer.

**Quote and invoice pages are blocked from search engines.** Those pages are reached
by a long private link rather than a password, and a link can be forwarded, pasted
into a chat, or picked up from a referrer header. Every customer-facing document
PaintClarity serves is marked no-index, no-archive at both the page and the header
level, so a link that escapes cannot turn into a search result.

**Data requests work out of the box.** Under Tools -> Export Personal Data and Tools-
> Erase Personal Data, WordPress can search PaintClarity by email address. Export
collects the customer record, their jobs, quotes, invoices, payments, and the emails
you sent them. Erase removes their details from all of it.

**Erasing does not destroy your books.** Quotes, invoices and payments are kept 
and stripped of the name, address, phone, email, typed signature and IP address 
instead of being deleted, because a business is required to keep financial records
for years and data protection law allows exactly that. Any quote or invoice link
previously sent to that customer stops working. Job photos are left for you to review
yourself rather than deleted automatically.

**Suggested privacy policy wording** for what PaintClarity stores and which services
can receive data is added to Settings -> Privacy -> Policy Guide.

**Three optional limits, all off by default**, under PaintClarity -> Settings ->
Privacy & Customer Data: delete the emailed-communication log after N months, forget
the IP address recorded when a quote was signed online after N months, and make 
quote and invoice links stop working after N days. A business working only in the
United States can leave all three off and nothing changes.

None of this is Pro. It is all in the free plugin.

## لقطات الشاشة

[⌊The quote/estimate builder with scope components and inclusions/exclusions.⌉⌊The
quote/estimate builder with scope components and inclusions/exclusions.⌉[

The quote/estimate builder with scope components and inclusions/exclusions.

[⌊The customer's accept page: branded, e-signed, with online deposit.⌉⌊The customer's
accept page: branded, e-signed, with online deposit.⌉[

The customer’s accept page: branded, e-signed, with online deposit.

[⌊The scheduling calendar with crews, worker badges, and holiday labels.⌉⌊The scheduling
calendar with crews, worker badges, and holiday labels.⌉[

The scheduling calendar with crews, worker badges, and holiday labels.

[⌊A painter's phone view: My Jobs, directions, and offline check-in.⌉⌊A painter's
phone view: My Jobs, directions, and offline check-in.⌉[

A painter’s phone view: My Jobs, directions, and offline check-in.

[⌊The Profits dashboard (Pro) with profit by crew and worker.⌉⌊The Profits dashboard(
Pro) with profit by crew and worker.⌉[

The Profits dashboard (Pro) with profit by crew and worker.

[⌊An invoice with online payment and mark-as-paid.⌉⌊An invoice with online payment
and mark-as-paid.⌉[

An invoice with online payment and mark-as-paid.

[⌊Settings: Company Profile, Appearance themes, Stripe, and AI.⌉⌊Settings: Company
Profile, Appearance themes, Stripe, and AI.⌉[

Settings: Company Profile, Appearance themes, Stripe, and AI.

[⌊The Color Visualizer: select a surface in the customer's photo and turn the wheel
until it is the color you are proposing.⌉⌊The Color Visualizer: select a surface
in the customer's photo and turn the wheel until it is the color you are proposing
.⌉[

The Color Visualizer: select a surface in the customer’s photo and turn the wheel
until it is the color you are proposing.

## التنصيب

 1. Install PaintClarity from the Plugins screen (Plugins  Add New  search “PaintClarity”),
    or upload the plugin ZIP under Plugins  Add New  Upload Plugin. Activate it.
 2. Create a WordPress Page and add the shortcode `[paintops_app]`. This one page is
    your whole PaintClarity app; it routes internally.
 3. Go to **PaintClarity  Settings** and set your Company Profile (business name, logo,
    country, currency), and review the Setup Health panel.
 4. (Optional) Add team members under **PaintClarity  Painters/Helpers**, set their
    permissions, and group them into Crews.
 5. (Optional) Add your Quote Terms & Conditions under Business Settings so customers
    see and sign against them.
 6. (Optional, Pro) Under **Settings  AI Settings** connect OpenAI, under **Stripe 
    Payments** add your Stripe secret key AND webhook signing secret (both are required
    before online payment buttons appear), and add a Google Maps API key for address
    autocomplete.

## الأسئلة المتكررّة

### Do I need a paid account to use it?

No. The free plugin runs entirely on your own WordPress site and lets you quote,
schedule, and manage unlimited jobs. Pro is an optional upgrade.

### What happens to my data if I deactivate or delete the plugin?

Nothing is deleted. Your jobs, quotes, customers, payments, hours, and photos stay
in your WordPress database, so nothing is lost if you deactivate temporarily or 
reinstall later. If you truly want the data gone, delete the plugin’s tables and
its uploads from your database and media library.

### Does it work without OpenAI, Stripe, or Google Maps?

Yes. Those are optional integrations. If you don’t enter their keys, the related
features simply stay off and everything else works, including keyless turn-by-turn
directions for your crew.

### Can my customers really sign a quote online?

They accept by typing their full name, which is stored with a timestamp and IP address
alongside your Terms & Conditions, a solid acceptance record. They can also decline
with a reason, and change their minds later.

### Who pays for the AI usage?

You do, through your own OpenAI account and key, typically a fraction of a cent 
to a few cents per action. PaintClarity adds per-month usage caps you control so
costs stay predictable.

### Can my painters log in without seeing my numbers?

Yes. Painters/Helpers get a dedicated role with opt-in permissions and their own
app view: My Jobs, My Hours (their own time and pay only), directions, check-in/
out, photos and receipts. Financial figures are owner-level and hidden from workers
unless you explicitly grant access.

### Does it work in the field with bad reception?

The app installs to a phone’s home screen, and Time Clock check-in/out keeps working
offline and syncs when a connection returns.

### Where is my data stored?

In your own WordPress database. PaintClarity doesn’t host your business data on 
an external server.

## المراجعات

لا توجد مراجعات لهذه الإضافة.

## المساهمون والمطوّرون

“PaintClarity” هو برنامج مفتوح المصدر. وقد ساهم هؤلاء الأشخاص بالأسفل في هذه الإضافة.

المساهمون

 *   [ paintops ](https://profiles.wordpress.org/paintops/)
 *   [ Freemius ](https://profiles.wordpress.org/freemius/)

[ترجمة ”PaintClarity“ إلى لغتك.](https://translate.wordpress.org/projects/wp-plugins/paintops)

### مُهتم بالتطوير؟

[تصفّح الشفرة](https://plugins.trac.wordpress.org/browser/paintops/)، تحقق من [مستودع SVN](https://plugins.svn.wordpress.org/paintops/)،
أو الاشتراك في [سجل التطوير](https://plugins.trac.wordpress.org/log/paintops/) بواسطة
[RSS](https://plugins.trac.wordpress.org/log/paintops/?limit=100&mode=stop_on_copy&format=rss).

## سجل التغييرات

#### 1.2.057

 * New Production Rates page, under Tools in the menu as “Rates”. It works out how
   much area one painter covers in one day from the jobs you have already finished:
   your logged hours and the paintable area on each job. The headline is your own
   figure, with a breakdown per job category beside it, and the rate you quote from
   underneath so you can see the two next to each other.
 * Every finished job in the window is listed, not just the ones that can be scored.
   A job with no paintable area recorded shows an “Add area” link instead of a rate,
   so it is obvious what is missing rather than quietly absent. You can look at 
   the last 5, 10, 20 or 50 completed jobs.
 * A job whose numbers look impossible, under 25 or over 2,000 sq ft per painter
   per day, is set aside in its own section with the reason explained, and is not
   counted. Usually it means an area was typed with a digit too many, or hours have
   not been logged yet.
 * You have the last word on any job. “Count it anyway” puts an unusual but real
   job back in, “Leave out” takes a job out, and either can be undone. Four sprayers
   in a warehouse really do move that fast, and PaintClarity should not argue with
   you about it.
 * New Production rate setting under Business > Pricing Rules, with an optional 
   override per job category under Job Categories. The Labor Days & Crew Cost Calculator
   now starts from that figure and tells you which one it used and where to change
   it, instead of a general number out of a book.
 * New Paintable Area field on the job form, and the Paint Calculator can save its
   own result straight onto the job with one click, which is what feeds the rates
   above. The calculator now confirms the save instead of leaving you wondering 
   whether the click landed.
 * Fixed: on a site set to metric units, the Paintable Area field could refuse to
   let the job form save at all.

#### 1.2.056

 * New installs now start with the calculators that suit each job category instead
   of just one. Residential Painting opens a quote with the Paint Calculator, the
   Paint Quantity Calculator and the Cabinet & Trim Calculator; Commercial Painting
   gets Paint, Paint Quantity and Labor Days. The category screen has allowed several
   calculators for a while, but every category still shipped naming only one, so
   four of the five sat unused in settings where nobody looks.
 * The Fence and Handyman category templates were shipping with no calculator at
   all. Fence now comes with the Deck/Fence Staining Calculator it was built for,
   and Handyman with the Labor Days & Crew Cost Calculator.
 * If you have already set your own calculators, nothing changes. Your selections
   are left exactly as you made them.

#### 1.2.055

 * Fixed five links in the app that pointed at pages which no longer exist. The 
   Help Center button on the Help page, the “how do I do a full backup” link on 
   the Business page, the plugin author link, and two of the starter links on the
   Resources page (the PaintClarity Software Tutorial and Getting the Most out of
   PaintClarity) were all still using addresses from before the plugin was renamed,
   so each one landed on a “page not found”.
 * If your Resources page already has those two starter links, they are corrected
   for you on update. A link you edited or replaced yourself is left alone.

#### 1.2.054

 * Export Personal Data now includes everything it should: the state or region on
   the address, the inclusions and exclusions, the itemized lines as the customer
   saw them on their quote, the reason they gave if they declined, and when and 
   how many times they opened their quote link.
 * Erase Personal Data now clears the state on the customer record and on every 
   job, and the reason the customer gave for declining. Those were being left behind.
 * Erasing now also tells you if scope or internal notes on the customer’s jobs 
   were kept, since free text can name someone anywhere inside it and no automated
   pass can tell.

#### 1.2.053

 * Fixed, and important if you ever run a data request: Export and Erase Personal
   Data were following the wrong link from a customer to their jobs. PaintClarity
   stores two different ids on a job, one for the customer record and an older one
   for a WordPress user account, and the data tools were reading the older one. 
   A request could therefore miss jobs that did belong to the person, and in an 
   erase it could have reached records belonging to someone else. Both now follow
   the customer record. If you ran an export or erase on 1.2.052, please run it 
   again.

#### 1.2.052

 * Quote and invoice pages are now blocked from search engines, so a link you email
   a customer stays out of search results even if it gets forwarded or shared.
 * Data requests: Tools -> Export Personal Data and Tools -> Erase Personal Data
   now search PaintClarity by email address, covering the customer record, jobs,
   quotes, invoices, payments and the emails you sent them.
 * Erasing a customer anonymizes rather than deletes. Quotes, invoices and payments
   keep their amounts and dates and lose the personal details, so your books stay
   intact, and links previously sent to that customer stop working.
 * Suggested privacy policy wording for what PaintClarity stores and who else sees
   it now appears under Settings -> Privacy -> Policy Guide.
 * New Settings -> Privacy & Customer Data section with three optional retention
   limits, all off by default. Everything here is in the free plugin.

#### 1.2.051

 * Job search results: the job title and its status chips were indented further 
   than the rest of the card. Everything in the card lines up now.
 * Not Won: the Call, Text and Email strip renders as the segmented control it was
   meant to be in the row view as well as the board, and the row has room above 
   it. In the row view it had been drawing as three plain links run together.
 * File a Receipt, job expenses and the vehicle log: the “Scan Receipt with AI” 
   and “Manually Enter” buttons are spaced apart. They were separated by a left 
   margin, which does nothing once the pair wraps onto two lines, which on a phone
   is always.

#### 1.2.050

 * Sign out. The app had no logout anywhere: an Administrator could leave through
   WP Admin, but a Painter/Helper had no way off the app at all. It now sits next
   to your name at the foot of the menu, on both the sidebar and the phone menu,
   and signing out clears the cached job pages so a shared phone does not keep the
   last person’s work readable.
 * Jobs: the Not Won drawer is in the row view as well as the board. A lost lead
   appears in no column and no row section, so that drawer is the only route back
   to one, and it was only ever drawn under the board.
 * Jobs: the Communication section is on the board view as well as the rows view,
   including its “nothing logged yet” state.
 * Vehicle Log: every field on the page is one height again. Most of the form was
   rendering at 34px while a few fields came out at 45px, so a single row could 
   hold a tall Date next to a short Driver. The Log and Report filter row is deliberately
   left compact.
 * File a Receipt: the two Receipt search date boxes were taller than the Search
   button beside them. All three now match.

#### 1.2.049

 * Jobs board: removed the white card that wrapped the three columns. The screen
   was three surfaces deep, a card holding tinted columns holding job cards, and
   the outer one carried no information. The columns now sit on the page like the
   row view’s sections do.

#### 1.2.048

 * Editing a job or request now shows where it sits and lets you move it: Back to
   Request, Mark Completed, Reopen as Job, Mark as Not Won, whichever apply. The
   same buttons the board has, on the one screen dedicated to editing the record,
   which had none of them.
 * A request marked Not Won can be reopened. It drops off the board entirely, so
   until now there was no obvious way back.

#### 1.2.047

 * Jobs: the Actions menu on the “Needs Your Attention” rows (Completed Jobs With
   a Balance Due, Completed Jobs Missing Expenses) opened far away from the row 
   you clicked, usually off the visible screen. It now opens directly under its 
   row.
 * A job with no category no longer has the word “Uncategorized” pushed in front
   of its name anywhere it is listed. “Deck stain”, not “Uncategorized Deck stain”.

#### 1.2.046

 * Painters/Helpers: “Can manage financials” now means what it says. It gives full
   financial access to the jobs that person is assigned to, and no longer opens 
   the business-wide Profits and Rankings pages, which showed year-to-date profit,
   margin, every job in the book, and each crew member’s profit share. Per-job access
   is unchanged.
 * Painters/Helpers: Expenses, Business and Checkup are no longer shown to a painter.
   They led nowhere: clicking one quietly reloaded My Jobs.
 * Painters/Helpers: Help now opens for a painter instead of reloading My Jobs.
 * A job whose category is missing or was deleted shows “Uncategorized” instead 
   of a bracketed number. Job titles read “Job #14 Kitchen repaint” rather than “
   Job #14 [0] Kitchen repaint”, and the same fix reaches the quote PDF headline
   and customer emails.
 * Permission messages are a proper card with a heading and a way back to your jobs,
   instead of one sentence on a blank page.
 * New Quote: the “add a Google Maps key in Settings” link only shows to someone
   who can open Settings. Everyone else is told to ask the office.

#### 1.2.045

 * Jobs board: the empty Requests column no longer shows its own “+ New Request”
   button. It pointed at the same screen as the New Job button at the top of the
   page, so the same action was offered twice within one scroll. The column now 
   just says what lands there.

#### 1.2.044

 * New Quote: Exclusions is now a formatted box like the Description of Work, with
   its own bold, italic, list and heading controls. Paragraphs, bullets and emphasis
   survive all the way to the quote the customer reads.
 * New Quote: the Situational clauses checklist moved inside the Exclusions field,
   between the toolbar and the box, matching the Standard lines strip added to the
   Description of Work in 1.2.043. Tick a clause and it appears in the box right
   underneath.
 * Exclusions saved before this update are plain text and keep their line breaks
   exactly as they were, on the job view and on the customer’s quote. Nothing needs
   to be retyped.

#### 1.2.043

 * New Quote: the Scope wording helper is now part of the Description of Work field
   itself, sitting between the formatting toolbar and the text box as a “Standard
   lines” strip. It had been above the field, then below it, and neither read right,
   because it writes into that field and belongs to it rather than beside it. Tick
   a line and you watch it appear in the box directly underneath.
 * New Quote: more room between Remove and “+ Add another option” in the add-ons,
   so the two stop reading as one split control when one of them deletes a row.

#### 1.2.042

 * New Quote: the “Show an itemized price breakdown to the customer?” question moved
   inside the itemize panel, so it appears when you open the panel to itemize. A
   quote that already has it ticked opens the panel by itself, so the setting is
   never switched on and out of sight.
 * New Quote: the green “Prefilled from this job’s most recent quote” banner is 
   now a tooltip on the Description of Work label, where the question actually occurs
   to you. Same words, one less line of page.
 * New Quote: the Description of Work box is 420px tall, up from 220px, and Exclusions
   is 280px, up from about 96px. Both are minimums, so they still grow with what
   you type.
 * New Quote: Optional add-ons is an accordion. It folds away on a quote that has
   none and opens itself, with a count, on a quote that has some.
 * New Quote: a little more room under the AI Job Photo Estimator link.
 * The Price List reference window is readable on a phone. It was missing the one
   tag that tells a phone to lay a page out at screen width, so the whole thing 
   was being rendered wide and then zoomed out to fit.

#### 1.2.041

 * New Quote: every tool in the Quote Tools drawer has its own icon, and the calculators
   dropped the “Use The” from their names. “Use The Paint Calculator” is now “Paint
   Calculator”.
 * New Quote: fixed a real problem from the last release. After running a calculator
   the page reloads and reopens it, but the drawer had closed, so the answer was
   computed and invisible. The drawer now opens itself whenever a calculator is 
   coming back with numbers.
 * New Quote: the Scope wording helper sits directly above Exclusions, so the two
   wording libraries stand together. Ticking a line now says what it inserted and
   where, because the description is above it.
 * New Quote: unticking the last line of standard wording no longer leaves a blank
   line at the foot of the customer’s description.
 * The Request acceptance rate moved off the New Quote screen and onto Business,
   in its own Request Performance section above Outstanding Balances. An all-time
   rate is a fact about the business, not about the quote in front of you.
 * The little “i” tooltips read properly again. They used to open upward into the
   app bar, which clipped them, and on a phone they ran off the side of the screen.
   They open downward now, and on a phone they sit at the bottom of the screen where
   the whole note fits.

#### 1.2.040

 * New Request: a filter box above “Select Existing Customer”. Type part of a name
   or an address and the list narrows as you type. Words can be in any order, so“
   peterson dana” finds “Dana Reyes, 88 Peterson St”. It filters the list already
   on the page, so there is no waiting and it works with no signal.
 * New Request: the customer list is capped at your 500 most recent, chosen by who
   you last did a job for rather than by where their name falls in the alphabet.
   If you have more than that, a line under the list says how many are not shown
   and links to Customers. A customer the page was opened for is always in the list,
   however long ago you worked for them.
 * New Request: the page is much lighter for a busy shop. At 3,000 customers it 
   was 848 KB, most of it a hidden block of customer data rather than the dropdown
   itself. It is now under 200 KB.
 * New Request: Customer Info, Job Info and Scheduling each start with a marked 
   heading band, so the three parts of the form read as three parts.

#### 1.2.039

 * New Quote: one “Quote Tools” drawer at the top holds Google Earth measuring, 
   the price list and this job category’s calculators. They used to be two loose
   rows of links half a page apart. Each tool is now its own row with its name and
   what it does, laid out in as many columns as fit.
 * New Quote: Exclusions is one section again. The situational clauses write into
   the exclusions box, so they now sit above it inside the same bordered block instead
   of underneath it looking like a separate checklist.
 * New Quote: “Show an itemized price breakdown to the customer?” moved inside the
   itemize card, where the lines it governs are. The card header now reads as something
   you can open, and it says what happens if you do not.
 * New Quote: the Quote Total note no longer points the wrong way. It said to adjust
   the labor line “below” when that line has always been above it. Plurals are right
   too, so it reads “1 worker” rather than “1 worker(s)”.
 * The AI description tools are off the new request form. They exist to improve 
   wording the customer will read, and a request never leaves the office. They are
   on the quote builder, against the Description of Work.

#### 1.2.038

 * The New Job button on the Jobs page is aligned properly on a laptop and on a 
   phone. The title now sits on its own line with one rule under it, and the button
   and the View All / Board links sit in a clean row beneath, the same shape as 
   the Expenses page.

#### 1.2.037

 * The Profits page reads properly on a phone. The year cards used to hold the stats
   beside the big Profit figure no matter how narrow the screen got, which squeezed
   them to nothing: every label was cut to two letters (“SALES TA…”) and the dollar
   figures ran into each other. On a phone the card now stacks, Profit first, with
   the stats under it in as many columns as actually fit.
 * Same fix on a small laptop window. At 1024px the stat strip was holding five 
   columns in the space for three and clipping the same way.
 * The Top and Bottom jobs ranking no longer pushes the whole app sideways on a 
   very narrow phone.

#### 1.2.036

 * One load control in the Visualizer, not two. While the photo area is empty it
   is the button; once a photo is in, the toolbar button comes back as “Change photo”,
   which is what it does at that point.
 * New Job at the top of the Jobs page.
 * File a Receipt at the top of the Expenses page.

#### 1.2.035

 * The empty photo area in the Visualizer is now the button. Tap or click anywhere
   in it to load a photo, instead of reaching back up to the toolbar. On a desktop
   you can also drop a file straight onto it.
 * Take a photo with the camera. On a phone the empty area offers “Take a Photo”
   alongside “Choose a Photo”, so you can shoot the wall you are standing in front
   of rather than hunting for it in your library.
 * Selection tolerance moved up again, to directly under the file name. The hint
   you read once should not sit above the slider you drag all day.

#### 1.2.034

 * All three receipt forms now open the same way. Business Related asks “Scan Receipt
   with AI” or “Manually Enter” first, the way the vehicle and job forms already
   did, instead of dropping a full form on you with the scan button buried inside
   it.
 * Removed the “File a Vehicle Receipt” button from the Vehicle Log. It sat directly
   above the form it linked to.

#### 1.2.033

 * One menu on a phone. The hamburger beside the search box is gone; the bottom 
   bar and its More sheet are the menu. Everything the hamburger reached is in the
   sheet, including Checkup, which it was missing, plus your version, who you are
   signed in as, and the WP Admin link for administrators. Tablets keep the hamburger,
   because they have no bottom bar.
 * Renamed “Completed & all jobs” to “View All Jobs”.

#### 1.2.032

 * Deleting a job now clears everything it owns. Quote add-ons were being left behind
   entirely, and so were logged messages. Photos, notes, receipts and their images,
   the time clock, financials, payments, paint colors, invoices, follow-up visits
   and quotes all go, verified table by table against a test job built with one 
   of everything.
 * An overhead expense or a vehicle trip that was tagged to a deleted job keeps 
   the record and loses the tag. Neither is the job’s money, so neither is removed.
 * Every delete in the app is now a button rather than a link: business notes, vehicle
   log entries, automatic vehicle costs, and the permanent job delete. A link that
   deletes can be fetched twice, which is what was swallowing the confirmations,
   and could be fired by anything that follows a URL.
 * New vendor names now match what is already on your books. Type a name that differs
   only in capitalization or spacing and it saves under the spelling you already
   use. Type something close, like sherwin-williams when Sherwin-Williams is on 
   file, and the form offers it before you save. Your choice either way, and once
   you take it the next receipt matches on its own.
 * The Expenses page sections fold, one open at a time: Where it went, Month by 
   month, Who you paid.
 * The duplicate receipt finder moved from Business to Expenses, next to the spending
   it asks about.
 * Taxes & Filing reads shorter. The explanation of what goes in each tax bucket
   is still there, folded into About this data.
 * Removed two database queries that ran on every visit to the Business page and
   fed nothing.

#### 1.2.031

 * Business overhead is back on the Business page. The list of logged overhead, 
   with its edit and delete, now lives inside the Business Expenses & Overhead section
   where it used to be, instead of on a page of its own. Filing a receipt is still
   File a Receipt’s job.
 * The Expenses page is now a summary of the year. Job materials, vehicle and overhead
   side by side with what each one did against last year, every category ranked 
   largest first, who you paid ranked by size, and a month by month list you can
   open and check against a card statement.
 * Fixed: deleting an overhead expense never showed its confirmation. The app’s 
   offline worker was fetching the delete link a second time, and the second fetch,
   finding the row already gone, drew the page with nothing to say. Deleting is 
   now a button rather than a link and confirms properly.
 * Fixed: opening a section on the Business page. Two sections claimed to open by
   default and three more worked out which should open only after they had already
   been drawn, so the section you got was whichever came first in the file. The 
   page now decides once, before anything is drawn.

#### 1.2.030

 * File a Receipt is now the one place every receipt starts. Vehicle, Business Related
   and Job Cost each have their own form on that page, folded into three cards with
   one open at a time. Landing there opens none of them, because the question the
   page asks is which kind of receipt this is.
 * Links can still go straight to the right form. A job’s Add Expense page is unchanged,
   and the Vehicle page has a new File a Vehicle Receipt button that lands on the
   vehicle form with it already open.
 * Fixed: on the Business Related form, picking “+ New vendor” did not open the 
   box to type the name in, and the Scan with AI button did nothing. Both had been
   broken since the form moved to this page in 1.2.027.

#### 1.2.029

 * The Board and Row view switch now agrees with itself. The link text was being
   drawn before the click was processed, so it showed the view you had just left.
   The view itself was always right; only the label was a click behind.
 * Moving a card on the Job Board now says so. Mark as Job, Mark as Not Won, Mark
   Completed and Back to Request all rewrote the record and then the card simply
   vanished from its column, which looks the same as a click that did nothing. Each
   one now names the record and what it became.
 * The folded sections on the Jobs page have a light outline, so a closed section
   reads as a card that is shut rather than a line of text floating on the page.

#### 1.2.028

 * The Business page is a stack of accordions again, one open at a time. Taxes &
   Filing is first and opens by default, because it is what you came for; the roster
   and the vehicle list are reference and stay folded until you want them.
 * The Vendors & 1099 table finally works on a phone. Each vendor is a card with
   its own labels instead of a seven-column table dragged sideways, so the two decisions
   you are there to make are a tap each.
 * “Do not track” is now “1099 not needed”. The decision you are recording is about
   the form, not about the vendor.
 * The 1099 threshold moved to PaintClarity > Business > 1099 Reporting. It is a
   setting, not something you do while reading a vendor list, and it had been sitting
   inside that list’s Save button making it look like the button only saved the 
   number beside it. The Business page now shows one line saying which figure is
   in force and why.
 * The rest of that block is regrouped: saving says what it saves, the bulk action
   is named in plain words and asks before it writes, and the two accountant exports
   sit apart under their own label.
 * Two lines of page furniture removed: the paragraph describing the Business page
   to someone already on it, and the sentence explaining the year switch sitting
   directly below the year switch.

#### 1.2.027

 * File a Receipt is now genuinely the one front door for every receipt. The overhead
   form used to live on the Expenses page and had to be summoned with a second parameter,
   so the one-front-door page had one door that opened onto a different building.
   The form is on File a Receipt itself now, at one route with one parameter.
 * The Expenses page is the ledger and nothing else: what has been logged this tax
   year, and editing or deleting a row in it. Its File a Receipt button goes straight
   to the overhead form.
 * If overhead is the only place you can file a receipt, File a Receipt takes you
   straight to the form instead of asking a question with one answer, the same way
   it already did for a lone job or the vehicle log.

#### 1.2.026

 * Quotes Out and Needs Your Attention now stay folded until you open them. They
   were set to open themselves whenever something was in them, which on a working
   business is every day, so neither was ever actually seen folded. The counts in
   each heading are what tell you whether to look.
 * Receipt search moved from the Business page to File a Receipt. Checking whether
   a stack of paper receipts is already filed is a filing job, so it now sits on
   the filing page, right above the chooser you use when the answer is no. The duplicate
   finder stays on Business, where the year picker it uses lives.
 * The Expenses page is a ledger again. The add form sits behind a File a Receipt
   button, which is the one front door for a job receipt, a vehicle receipt or an
   overhead receipt.
 * The Scan Receipt with AI and Manually Enter buttons above that form are gone.
   The form has its own Scan with AI button on the receipt photo field, so those
   two asked a question about a choice the form already offered. Picking a photo
   still starts a scan on its own.

#### 1.2.025

 * Message History can now start the next contact, not just write down the last 
   one. Call, Text and Email open your own phone or mail app and log themselves 
   into the history below; Email Quote, Send Follow-Up Email and Text Follow-Up 
   are the same composed sends the quote screen and the alerts card already offer,
   shown only when they actually apply to the record.
 * Record a contact folds away on that page. It was six fields sitting above the
   history, so reading what had already happened started with a scroll past a form
   nobody had asked for. It reopens by itself if an entry fails to save.
 * The Communication section on Jobs folds away too, alongside Quotes Out and Needs
   Your Attention.
 * Mark quote declined now appears only when there is something to decline: a request
   with a quote on it the customer has not accepted. A request nobody has priced
   and an already accepted quote no longer offer the button, and the same test is
   enforced when the form is submitted, not just when it is drawn.
 * The Communication section’s replies say whether they worked. Four of its five
   messages are refusals and every one of them was being drawn in the green success
   box.
 * Today’s Crew is gone from the Jobs page. It listed the jobs scheduled for today,
   all of which were already in Active Jobs at the top of the same page with more
   detail; on the commonest day it was a card that existed to say nothing was scheduled.

#### 1.2.024

 * The Jobs page is now organized by what you can do about it. Active Jobs and Upcoming
   come first and are always open; Quotes Out and Needs Your Attention fold away
   underneath, opening on their own when there is something in them worth looking
   at.
 * Every job list has column headers now, so the date, …

## ميتا Meta

 *  Version **1.2.057**
 *  Last updated **قبل 10 دقائق**
 *  Active installations **أقل من 10**
 *  WordPress version ** 6.2 أو أعلى **
 *  Tested up to **7.1.1**
 *  PHP version ** 7.4 أو أعلى **
 *  Language
 * [English (US)](https://wordpress.org/plugins/paintops/)
 * Tags
 * [contractor](https://ar.wordpress.org/plugins/tags/contractor/)[estimates](https://ar.wordpress.org/plugins/tags/estimates/)
   [invoicing](https://ar.wordpress.org/plugins/tags/invoicing/)[painting](https://ar.wordpress.org/plugins/tags/painting/)
   [scheduling](https://ar.wordpress.org/plugins/tags/scheduling/)
 *  [عرض متقدم](https://ar.wordpress.org/plugins/paintops/advanced/)

## التقييم

لم يتم تقديم أي مراجعات بعد.

[Your review](https://wordpress.org/support/plugin/paintops/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/paintops/reviews/)

## المساهمون

 *   [ paintops ](https://profiles.wordpress.org/paintops/)
 *   [ Freemius ](https://profiles.wordpress.org/freemius/)

## الدعم

لديك شيء لتقوله؟ بحاجة الى مساعدة؟

 [عرض منتدى الدعم](https://wordpress.org/support/plugin/paintops/)