| Server IP : 139.59.63.204 / Your IP : 216.73.217.62 Web Server : Apache/2.4.58 (Ubuntu) System : Linux ubuntu-s-1vcpu-1gb-blr1-01 6.8.0-110-generic #110-Ubuntu SMP PREEMPT_DYNAMIC Thu Mar 19 15:09:20 UTC 2026 x86_64 User : root ( 0) PHP Version : 8.3.6 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /var/www/crmapp/storage/framework/views/ |
Upload File : |
<!doctype html>
<html lang="<?php echo e(str_replace('_', '-', app()->getLocale())); ?>">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- CSRF Token -->
<meta name="csrf-token" content="<?php echo e(csrf_token()); ?>">
<title><?php echo e(config('app.name', 'Easy CRM')); ?></title>
<!-- Fonts -->
<link rel="dns-prefetch" href="//fonts.bunny.net">
<link href="https://fonts.bunny.net/css?family=Nunito" rel="stylesheet">
<!-- Scripts -->
<link href="<?php echo e(asset('assets/css/app.css')); ?>" rel="stylesheet">
</head>
<body>
<div class="wrapper">
<?php echo $__env->make('partials.sidebar', \Illuminate\Support\Arr::except(get_defined_vars(), ['__data', '__path']))->render(); ?>
<div class="main">
<?php echo $__env->make('partials.navbar', \Illuminate\Support\Arr::except(get_defined_vars(), ['__data', '__path']))->render(); ?>
<main class="content">
<?php echo $__env->yieldContent('content'); ?>
</main>
<?php echo $__env->make('partials.footer', \Illuminate\Support\Arr::except(get_defined_vars(), ['__data', '__path']))->render(); ?>
</div>
</div>
<script src="<?php echo e(asset('assets/js/app.js')); ?>"></script>
<script src="https://cdn.jsdelivr.net/npm/sortablejs@1.15.2/Sortable.min.js"></script>
<script>
const token = document.querySelector('input[name=_token]').value;
// Make each column sortable and connected
document.querySelectorAll('[id^=stage-]').forEach(function(el){
new Sortable(el, {
group: 'kanban',
animation: 150,
onEnd: function (evt) {
const item = evt.item;
const dealId = item.getAttribute('data-id');
const toStageId = evt.to.getAttribute('data-stage');
const orderedIds = Array.from(evt.to.children).map(c =>
c.getAttribute('data-id'));
// 1) Move deal to another stage
fetch(`/deals/${dealId}/stage`, {
method: 'PATCH',
headers: { 'Content-Type':'application/json', 'X-CSRF-TOKEN': token,
'Accept':'application/json' },
body: JSON.stringify({ to_stage_id: toStageId, new_position:
evt.newDraggableIndex ?? 0 })
}).then(r=>r.json()).then(() => {
// 2) Reorder within target stage
fetch(`/stages/${toStageId}/reorder`, {
method: 'PATCH',
headers: { 'Content-Type':'application/json', 'X-CSRF-TOKEN': token,
'Accept':'application/json' },
body: JSON.stringify({ ordered_ids: orderedIds })
});
});
}
});
});
</script>
<script>
document.addEventListener("DOMContentLoaded", function() {
var ctx = document.getElementById("chartjs-dashboard-line").getContext("2d");
var gradient = ctx.createLinearGradient(0, 0, 0, 225);
gradient.addColorStop(0, "rgba(215, 227, 244, 1)");
gradient.addColorStop(1, "rgba(215, 227, 244, 0)");
// Line chart
new Chart(document.getElementById("chartjs-dashboard-line"), {
type: "line",
data: {
labels: ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"],
datasets: [{
label: "Sales ($)",
fill: true,
backgroundColor: gradient,
borderColor: window.theme.primary,
data: [
2115,
1562,
1584,
1892,
1587,
1923,
2566,
2448,
2805,
3438,
2917,
3327
]
}]
},
options: {
maintainAspectRatio: false,
legend: {
display: false
},
tooltips: {
intersect: false
},
hover: {
intersect: true
},
plugins: {
filler: {
propagate: false
}
},
scales: {
xAxes: [{
reverse: true,
gridLines: {
color: "rgba(0,0,0,0.0)"
}
}],
yAxes: [{
ticks: {
stepSize: 1000
},
display: true,
borderDash: [3, 3],
gridLines: {
color: "rgba(0,0,0,0.0)"
}
}]
}
}
});
});
</script>
<?php echo $__env->yieldPushContent('scripts'); ?>
</body>
</html>
<?php /**PATH /var/www/crmapp/resources/views/layouts/app.blade.php ENDPATH**/ ?>