This Cookie Policy was last updated on 25/03/2025 and applies to citizens and legal permanent residents of the European Economic Area and Switzerland.
1. Introduction
Our website, https://strukton.unbrickable.nl/en (hereinafter: "the website") uses cookies and other similar technologies (for simplicity, all technologies are referred to as "cookies"). Cookies are also placed by third parties we have engaged. In the document below, we inform you about the use of cookies on our website.
2. What are cookies?
A cookie is a small, simple file that is sent along with pages from this website and stored by your browser on your computer's hard drive or another device. The information stored in it may be returned to our servers or the servers of relevant third parties during a subsequent visit.
3. What are scripts?
A script is a piece of program code used to make our website function properly and interactively. This code is executed on our server or on your device.
4. What is a web beacon?
A web beacon (or pixel tag) is a small, invisible piece of text or image on a website that is used to monitor traffic on that website. To accomplish this, web beacons store various data about you.
5. Cookies
5.1 Technical or functional cookies
Some cookies ensure that certain parts of the website work properly and that your user preferences remain known. By placing functional cookies, we make it easier for you to visit our website. This way, you do not need to repeatedly enter the same information when visiting our website and, for example, the items remain in your shopping cart until you have paid. We may place these cookies without your consent.
5.2 Marketing/Tracking cookies
Marketing/Tracking cookies are cookies or any other form of local storage used to create user profiles for displaying advertising or tracking the user on this website or across several websites for similar marketing purposes.
6. Placed cookies
Sharing data
This data is not shared with third parties.
Functional
persistent
Save user preferences
session
Store browser details
session
Read if cookies can be placed
persistent
Save user preferences
1 year
Save user preferences
persistent
Store logged-in users
session
Store language settings
Sharing data
This data is not shared with third parties.
Statistics (anonymous)
persistent
Store performed actions on the website
Sharing data
This data is not shared with third parties.
Functional
session
Store items in shopping cart
session
Store items in shopping cart
1 day
Store items in shopping cart
session
Store performed actions on the website
persistent
session
Store performed actions on the website
Sharing data
This data is not shared with third parties.
Functional
Provide functions across pages
Statistics
2 years
Store and count pageviews
Sharing data
This data is not shared with third parties.
Statistics
Six months
Six months
Store and count pageviews
Six months
Store and count pageviews
Six months
Store browser details
session
Store and track interactions
Six months
Store a unique session ID
30 minutes
Store and count pageviews
Statistics
30 minutes
Provide functions across pages
Sharing data
This data is not shared with third parties.
Functional
2 days
Preventing cached pages involves strategies to ensure users always see the most up-to-date content. Here's a breakdown of common methods:
**1. HTTP Caching Headers:**
These are the most fundamental way to control caching. You set these headers in your server's response to the client's browser or any intermediary caching proxy.
* **`Cache-Control` Header:** This is the primary directive.
* **`no-store`:** This is the strongest directive. It tells caches (browser, proxies) not to store the response at all. The client will request the resource from the origin server every single time.
* **`no-cache`:** This directive is a bit misleading. It *does* allow caches to store the response, but it requires the cache to revalidate its stored copy with the origin server before serving it. The origin server can then tell the cache if the content has changed. This is often used to ensure freshness without necessarily re-downloading the entire resource every time.
* **`max-age=0`:** Similar to `no-cache`, this sets the maximum time the response is considered fresh to zero seconds. It forces revalidation on the next request.
* **`must-revalidate`:** This directive tells caches that once a resource becomes stale, they *must* revalidate it with the origin server. They cannot serve a stale copy.
* **`public` vs. `private`:** `public` allows any cache to store the response, while `private` is intended for client-side caches only (like the browser).
* **`Expires` Header (Legacy):**
* This header specifies a date/time after which the response is considered stale. While still supported, `Cache-Control` is generally preferred as it offers more granular control.
* **`ETag` Header (Entity Tag):**
* A unique identifier for a specific version of a resource. The browser can send an `If-None-Match` header with the ETag it has. If the ETag on the server matches, the server returns a `304 Not Modified` response, saving bandwidth. If it doesn't match, the server sends the new content.
* **`Last-Modified` Header:**
* Indicates the last modification date of the resource. The browser can send an `If-Modified-Since` header with the date it has. Similar to ETags, if the content hasn't been modified, the server returns `304 Not Modified`.
**2. Dynamic Content and Server-Side Logic:**
If your content is inherently dynamic and changes frequently (e.g., personalized data, real-time stock prices), you'll want to avoid caching it for very long durations, or at all.
* **Server-Side Rendering (SSR):** For frameworks like React, Vue, or Angular, using SSR ensures the initial HTML is generated on the server for each request, thus always reflecting the latest state.
* **API Endpoints:** If your application fetches data from APIs, ensure those API endpoints are configured with appropriate caching headers, or that they are designed to return fresh data on every call.
**3. Cache Busting Techniques:**
If you *do* want to leverage caching for performance but need to force a refresh when content changes, you can use cache busting. This involves changing the URL of a resource whenever its content is updated.
* **Timestamp-Based Cache Busting:** Append a timestamp to the URL.
```html
```
When the script is updated, the timestamp changes, creating a new URL that caches are forced to fetch.
* **Version Number-Based Cache Busting:** Similar to timestamps, but uses a version number.
```html
```
* **Content Hashing (Fingerprinting):** Dynamically generate a hash of the file's content and append it to the filename. This is arguably the most robust method because the hash only changes when the file content changes.
```html
```
This often requires a build process (like Webpack, Rollup, Grunt, Gulp) to automate the hashing and updating of script/link tags.
**4. CDN Configuration:**
If you're using a Content Delivery Network (CDN), you'll need to configure its caching rules as well. CDNs act as intermediary caches between your origin server and the user.
* **CDN Cache Invalidation/Purging:** Most CDNs provide tools to manually or programmatically invalidate (purge) cached content. This is crucial when you update content on your origin server and want the CDN to fetch the new version immediately.
* **CDN Cache Settings:** Configure your CDN's `Cache-Control` headers to align with your origin server's settings or define specific caching durations for different asset types.
**5. Browser-Specific Settings (Less Control):**
While you can't directly control user browser settings, it's worth noting that users can manually clear their browser cache or instruct their browser not to cache pages.
**When to Prevent Caching:**
* **Highly Sensitive Data:** Financial transactions, personalized user information that changes frequently.
* **Real-time Information:** Stock tickers, live sports scores.
* **Forms with Critical Data:** If a user submits a form and gets an error, you don't want them to see a cached version of the form that might be missing their input or showing outdated error messages.
* **Pages Under Active Development/Testing:** While deploying, you might want to ensure everyone sees the latest version.
**Key Takeaway:**
The most effective way to prevent caching or to control its duration is through **HTTP `Cache-Control` headers**. Use them strategically based on the nature and sensitivity of your content. For assets that should always be fresh when updated, implement a robust cache-busting strategy, ideally using content hashing.
Functional
365 days
Store cookie consent preferences
365 days
Store cookie consent preferences
365 days
Store cookie consent preferences
365 days
Store cookie consent preferences
Functional
Six months
Provide spam protection
Marketing
session
Read and filter requests from bots
session
Read and filter requests from bots
persistent
Read and filter requests from bots
Sharing data
This data is not shared with third parties.
Functional
session
Provide fraud prevention
1 year
Store privacy preferences
3 days
3 years
Provide fraud prevention
persistent
Store account details
Statistics
1 year
Store a unique user ID
Sharing data
Sharing of data is pending investigation
Purpose pending investigation
Customer Effort Score Exit Page
WC Blocks Mini Cart Totals
e_event-tracker
e_kit-elements-defaults
customizerVisitCount
storeApiCartHash
wfacp_page_is_loaded
log-settings
storeApiCartData
fk_contact_uid
bwfan_session
bwfan_visitor
wffn_si
wffn_timezone
wffn_is_mobile
wffn_browser
wffn_referrer
wffn_flt
wffn_fl_url
wc_blocks_dismissed_incompatible_extensions_notices
hasCheckoutBlockInserted
wffn_traffic_source
cmplzSelectedRegion
365 days
CMPLZ banner status
365 days
wfwaf-authcookie-08308236174615ecd16e877af7f055ab
cmplz_policy_id
365 days
cmplz_statistics
365 days
qm-container-height
fkcart_cart_qty
fkcart_cart_total
wfwaf-authcookie-613546c13920b2b1aedab85a59088d7a
QM Container Width
adobeCleanFontAdded
fkcart_fragments_9499e5ce990b85e525abd3cb109c848e
fkcart_locale
wc_remote_logging_last_error_sent_time
_ga_5TFS8M5TTY
cf_clearance
_ga_8H7PDE9309
__ppcpBlocksPaypalExpressButtons_storage__
mp_150605b3b9f979922f2ac5a52e2dcfe9_mixpanel
mp_gen_new_tab_id_mixpanel_150605b3b9f979922f2ac5a52e2dcfe9
mp_tab_id_mixpanel_150605b3b9f979922f2ac5a52e2dcfe9
TRP Language
bwfan_do_cart_update
ally-supports-cache
hjViewportId
_hjSession_6592855
7. Consent
When you visit our website for the first time, we will present you with a pop-up explaining cookies. By clicking "Save Preferences," you agree to our use of the cookie and plug-in categories you selected in the pop-up, as detailed in this Cookie Policy. While you can disable cookies through your browser settings, please be aware that our website may then not function correctly.
7.1 Manage your consent settings
You have loaded the Cookie Policy without javascript support. On AMP, you can use the manage consent button on the bottom of the page.
8. Enabling/Disabling and Deleting Cookies
You can use your internet browser to automatically or manually delete cookies. You can also specify that certain cookies may not be placed. Another option is to change the settings of your internet browser so that you receive a message each time a cookie is placed. For more information about these options, please refer to the instructions in the Help section of your browser.
Please note that our website may not function properly if all cookies are disabled. If you do delete the cookies in your browser, they will be placed again after your consent when you visit our website again.
9. Your Rights Regarding Personal Data
You have the following rights concerning your personal data:
- You have the right to know why your personal data is needed, what will happen to it, and how long it will be kept.
- Right of access: You have the right to access your personal data that is known to us.
- Right to rectification: you have the right to supplement, correct, have deleted, or blocked your personal data whenever you wish.
- If you give us your consent to process your data, you have the right to revoke that consent and to have your personal data deleted.
- Right to data portability: You have the right to request all your personal data from the controller and transfer it in its entirety to another controller.
- Right to object: You may object to the processing of your data. We will comply with this, unless there are justified grounds for processing.
To exercise these rights, please contact us. Please refer to the contact details at the bottom of this Cookie Policy. If you have a complaint about how we handle your data, we would like to hear from you, but you also have the right to submit a complaint to the supervisory authority (the Data Protection Authority).
10. Contact Information
For questions and/or comments about our Cookie Policy and this statement, please contact us using the following contact details:
Unbrickable (powered by Brickworkz)
Rigtersbleek-sandvoort 10
7521 BE Enschede
Netherlands
Website https://strukton.unbrickable.nl/en
Email: support@ex.comunbrickable.nl
Phone number: 0643866369
This Cookie Policy was synchronized with cookiedatabase.org on March 25, 2025.