feat: Enhance user settings with cron URL plan display
- Added a new field to display the cron URL plan in user settings. - Updated JavaScript to handle the new plan data. refactor: Unify product model and migrate data - Migrated product data from `products_data` to `products` table. - Added new columns to `products` for better data organization. - Created `products_aggregate` table for storing aggregated product metrics. chore: Drop deprecated products_data table - Removed `products_data` table as data is now stored in `products`. feat: Add merchant URL flags to products - Introduced flags for tracking merchant URL status in `products` table. - Normalized product URLs to handle empty or invalid values. feat: Link campaign alerts to specific products - Added `product_id` column to `campaign_alerts` table for better tracking. - Created an index for efficient querying of alerts by product. chore: Add debug scripts for client data inspection - Created debug scripts to inspect client data from local and remote databases. - Included error handling and output formatting for better readability.
This commit is contained in:
@@ -1856,6 +1856,44 @@ table {
|
||||
flex: 1 1 260px;
|
||||
}
|
||||
|
||||
&.filter-group-ad-group {
|
||||
.ad-group-filter-actions {
|
||||
display: flex;
|
||||
gap: 8px;
|
||||
align-items: center;
|
||||
|
||||
.form-control {
|
||||
flex: 1 1 auto;
|
||||
min-width: 0;
|
||||
}
|
||||
}
|
||||
|
||||
#delete-products-ad-group {
|
||||
min-width: 38px;
|
||||
height: 38px;
|
||||
border-radius: 6px;
|
||||
margin: 0;
|
||||
background: #dc3545;
|
||||
border: 1px solid #dc3545;
|
||||
color: #fff;
|
||||
cursor: pointer;
|
||||
|
||||
&:hover:not(:disabled) {
|
||||
background: #bb2d3b;
|
||||
border-color: #bb2d3b;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
&:disabled {
|
||||
opacity: 0.45;
|
||||
cursor: default;
|
||||
background: #dc3545;
|
||||
border-color: #dc3545;
|
||||
color: #fff;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&.filter-group-roas {
|
||||
flex: 0 0 200px;
|
||||
}
|
||||
@@ -1866,6 +1904,73 @@ table {
|
||||
}
|
||||
}
|
||||
|
||||
.products-scope-alerts {
|
||||
margin-bottom: 12px;
|
||||
border: 1px solid #FECACA;
|
||||
background: #FEF2F2;
|
||||
border-radius: 8px;
|
||||
overflow: hidden;
|
||||
|
||||
summary {
|
||||
cursor: pointer;
|
||||
list-style: none;
|
||||
padding: 10px 12px;
|
||||
font-size: 13px;
|
||||
font-weight: 600;
|
||||
color: #991B1B;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 8px;
|
||||
|
||||
&::-webkit-details-marker {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
.products-scope-alerts-list {
|
||||
border-top: 1px solid #FECACA;
|
||||
background: #FFF;
|
||||
max-height: 260px;
|
||||
overflow: auto;
|
||||
}
|
||||
|
||||
.products-scope-alert-item {
|
||||
padding: 10px 12px;
|
||||
border-bottom: 1px solid #F1F5F9;
|
||||
|
||||
&:last-child {
|
||||
border-bottom: none;
|
||||
}
|
||||
}
|
||||
|
||||
.products-scope-alert-meta {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 8px;
|
||||
margin-bottom: 4px;
|
||||
font-size: 11px;
|
||||
color: #64748B;
|
||||
}
|
||||
|
||||
.products-scope-alert-type {
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
padding: 2px 6px;
|
||||
border-radius: 999px;
|
||||
background: #EEF2FF;
|
||||
color: #4338CA;
|
||||
font-weight: 600;
|
||||
text-transform: uppercase;
|
||||
letter-spacing: 0.3px;
|
||||
}
|
||||
|
||||
.products-scope-alert-message {
|
||||
font-size: 13px;
|
||||
color: $cTextDark;
|
||||
line-height: 1.45;
|
||||
}
|
||||
}
|
||||
|
||||
.products-actions {
|
||||
margin-bottom: 12px;
|
||||
|
||||
@@ -2458,6 +2563,37 @@ table#products {
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
.cron-schedule-list {
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
.cron-schedule-item {
|
||||
border: 1px solid #DFE7F0;
|
||||
background: #F4F8FD;
|
||||
border-radius: 8px;
|
||||
padding: 9px 12px;
|
||||
margin-bottom: 8px;
|
||||
|
||||
&:last-child {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
strong {
|
||||
display: block;
|
||||
color: $cTextDark;
|
||||
font-size: 13px;
|
||||
font-weight: 700;
|
||||
margin-bottom: 2px;
|
||||
}
|
||||
|
||||
small {
|
||||
display: block;
|
||||
color: #667788;
|
||||
font-size: 12px;
|
||||
line-height: 1.35;
|
||||
}
|
||||
}
|
||||
|
||||
.cron-progress-item {
|
||||
margin-bottom: 14px;
|
||||
|
||||
@@ -2553,6 +2689,13 @@ table#products {
|
||||
font-size: 12px;
|
||||
overflow-x: auto;
|
||||
}
|
||||
|
||||
.cron-url-plan {
|
||||
display: block;
|
||||
color: #6C7B8A;
|
||||
font-size: 11px;
|
||||
margin-bottom: 6px;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 1200px) {
|
||||
|
||||
Reference in New Issue
Block a user