*
*
*
*
*
+962
*
*
*
*
+962
HR
HR
·
📍
🏆
🎂
🎉
[e.code,e.name,deptName(e.deptId),e.position,e.email,e.hireDate,e.status])],'SSG-employees.csv')" class="btn btn-ghost" x-text="t('Export CSV')">
›
✕
·
{ e.offboarding.lastDay = e.offboarding.lastDay > ammanTodayISO() ? ammanTodayISO() : e.offboarding.lastDay; await finalizeOffboarding(e); confirmBox = null; } }" class="btn btn-outline !py-1.5 !text-[12.5px] !text-red-600" x-text="t('Complete exit now')">
+962
·
·
✕
✕
✕
−
+
[e.code,e.name,e.position,deptName(e.deptId),dispName(emp(e.managerId)),teamSize(e.id),e.email,e.phone])],'SSG-hierarchy.csv')" class="btn btn-ghost !py-1.5 !text-[12px]" x-text="t('Export CSV')">
›
✕
›
[r.name,r.min,crmBudgetMin(),r.over])],'SSG-breaks-'+crmBreakDay+'.csv')" class="btn btn-ghost" :disabled="!crmBreakRowsForDay().length" x-text="t('Export CSV')">
[a.empName||a.name,a.email,a.crmRole,a.sdr?'yes':'',crmSignupLabel(a.signup),a.lastLogin?a.lastLogin.slice(0,10):''])],'SSG-agent-accounts.csv')" class="btn btn-ghost !py-1.5 !text-[12px]" x-text="t('Export CSV')">
[a.emp.code,a.emp.name,a.date,a.in||'',a.out||'',a.workedMin,a.lateMin,a.otHours,a.status])],'SSG-attendance-'+attRange().from+'_'+attRange().to+'.csv')" class="btn btn-ghost" x-text="t('Export CSV')">
renderCharts())" class="sel !w-44">
[r.emp.code,r.emp.name,r.target,r.achieved,r.pct,r.tier,r.rate,r.commission,r.deals])],'SSG-commissions-'+salesMonth+'.csv')" x-text="t('Export CSV')">
✕
›
▸
[r.emp.code,r.emp.name,r.type,r.start,r.end||'',r.daysLeft===null?'':r.daysLeft,r.ndaSigned?'Y':'N',r.nonCompete?'Y':'N',r.noticeDays])],'SSG-contracts.csv')" class="btn btn-ghost" x-text="t('Export CSV')">
✕
✕
✕
✕
✕
✕
📍
x!==i) : db.settings.attendance.workDays.push(i)" class="btn !py-1.5 !px-3 !text-[12px]" :class="db.settings.attendance.workDays.includes(i)?'btn-primary':'btn-outline'" x-text="lang==='ar'?HR_AR_EXTRA.daysShort[i]:d">
✕
✕
renderCharts())" x-text="t(tb[1])">
+962
+962
💰
{ dlabel=''; })" />
—
✕
✕
x!==e.id)" />
x!==ch) : [...annForm.channels, ch]" class="btn !py-1.5 !text-[12px]" :class="annForm.channels.includes(ch)?'btn-primary':'btn-outline'" x-text="ch==='portal'?t('Portal'):t('Email')">
x!==e.id)" />
✕
+
✕
✕
✕
✕
✕
✕
✕
✕
{ const pw = draft.password; if (await saveAccount(draft.empId, draft.email, draft.role, draft.status, pw)) { shown = pw || null; draft.isNew = false; draft.password=''; } })()" class="btn btn-primary" x-text="t('Save changes')">
✕
✎
✕
✕
✕
✕
x.id!==bp.id)" class="text-lg" style="color:var(--ink-3)">✕
↑
↓
✕
✕
x!==m) : [...db.settings.offNetworkModules, m]; persist()" class="btn !py-1.5 !px-3 !text-[12px]" :class="db.settings.offNetworkModules.includes(m)?'btn-primary':'btn-outline'" x-text="m">
✕
✕
🏆
🏆
✕
*
*
+962
*
*
*
*
*
*
.
.
✕
✕
✕
✕
ESC
↑
↓
↵