Uname:Linux machinox-server 6.17.0-1013-aws #13~24.04.1-Ubuntu SMP Fri Apr 24 21:36:58 UTC 2026 aarch64

Base Dir : /var/www/machinox.in

User : root


403WebShell
403Webshell
Server IP : 13.235.167.51  /  Your IP : 216.73.217.116
Web Server : Apache
System : Linux machinox-server 6.17.0-1013-aws #13~24.04.1-Ubuntu SMP Fri Apr 24 21:36:58 UTC 2026 aarch64
User : root ( 0)
PHP Version : 8.2.29
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : OFF
Directory :  /var/www/app.machinox.in/app/Http/Controllers/WebService/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /var/www/app.machinox.in/app/Http/Controllers/WebService/AdvertiseController.php
<?php

namespace App\Http\Controllers\WebService;

use App\Http\Controllers\Controller;
use App\Models\Advertisement;
use Exception;
use App\Http\Requests\WebService\AdvertiseRequest;
use App\Actions\WebService\AdvertiseAction;
use App\Http\Requests\WebService\AdImageRequest;
use App\Models\Notification;
use App\Models\User;
use App\Models\UserSubscription;
use Illuminate\Foundation\Http\FormRequest;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;

class AdvertiseController extends Controller
{
    public function SetInfo(AdvertiseRequest $request, AdvertiseAction $action, $adId = null)
    {
        try {

            $response = $action->execute($request, $adId);
            return $this->sendSuccess($response->message, ['uuid' => $response->uuid]);
        } catch (Exception $e) {

            return response()->json(['status' => 'error', 'message' => $e->getMessage()], 500);
        }
    }

    public function myAdvertises(Request $request)
    {
        try {
            $userId = USER_ID();
            $list = Advertisement::GetAdvertises($request, $type = null, $userId);
            return $this->sendSuccess(trans('messages.OK'), $list);
        } catch (Exception $th) {
            return $this->sendError($th->getMessage());
        }
    }

    public function GetInfo($id)
    {
        try {
            $advertise = Advertisement::with([
                'machine_type',
                'machine_model',
                'images',
                'user'
            ])->where('uuid', $id)->firstOrFail();
            $boost = $advertise->boosts()->where('is_active', true)->first();
            $advertise->is_boosted = $boost ? true : false;
            $advertise->ad_uuid = $advertise->uuid;
            $advertise->chat_partner_id = USER_ID();
            return $this->sendSuccess(trans('messages.OK'), $advertise);
        } catch (Exception $th) {
            return $this->sendError($th->getMessage());
        }
    }


    public function SetSoldInfo($id)
    {
        try {
            $advertisement = Advertisement::firstWhere('uuid', $id);

            if ($advertisement->is_sold) {
                return $this->sendError(trans('messages.ADVERTISEMENT_ALREADY_SOLD'));
            }

            $advertisement->is_sold = true;
            $advertisement->is_publish = false;
            $advertisement->save();
            Notification::SetNotification(
                $advertisement->user_id,
                "Advertisement Marked as Sold",
                "Your advertisement for {$advertisement->advertise_type} {$advertisement?->machine_model?->name} has been successfully marked as sold.",
                "ADVERTISE_VIEW",
                $advertisement->uuid,
                "1"
            );

            $message = $advertisement->advertise_type == 'RENT' ? trans('messages.ADVERTISEMENT_BOOK_SUCCESS') : trans('messages.ADVERTISEMENT_SOLD_SUCCESS');

            return $this->sendSuccess($message);
        } catch (Exception $th) {
            return $this->sendError($th->getMessage());
        }
    }

    public function GetCatAdsList(FormRequest $request, $catId)
    {
        try {
            $list = Advertisement::GetCatAdvertises($request, $catId);
            return $this->sendSuccess(trans('messages.OK'), $list);
        } catch (Exception $th) {
            return $this->sendError($th->getMessage());
        }
    }

    public function GetHomeAdvertises(Request $request, $type)
    {
        try {
            $list = Advertisement::GetHomeAdvertises($request, $type);
            return $this->sendSuccess(trans('messages.OK'), $list);
        } catch (Exception $th) {
            return $this->sendError($th->getMessage());
        }
    }

    public function SetPublishInfo($id)
    {
        try {
            $advertisement = Advertisement::where('uuid', $id)->firstOrFail();
            $user = User::find(USER_ID());
            $subs = $advertisement->advertise_type === "SELL" ? $user->hasSellerSubscription() : $user->hasRentalSubscription();
            if (!$subs) {
                return $this->sendError(trans('messages.NO_SUBSCRIPTION'), 403);
            }

            $advertisement->is_publish = true;
            $advertisement->is_sold = false;
            $advertisement->is_draft = false;
            $advertisement->save();
            return $this->sendSuccess(trans('messages.ADVERTISEMENT_PUBLISHED_SUCCESS'));
        } catch (Exception $th) {
            return $this->sendError($th->getMessage());
        }
    }

    public function SetRepublishInfo($id)
    {
        try {
            $user = User::find(USER_ID());
            $advertisement = Advertisement::where('uuid', $id)->firstOrFail();
            $subs = $advertisement->advertise_type === "SELL" ? $user->hasSellerSubscription() : $user->hasRentalSubscription();
            if (!$subs) {
                return $this->sendError(trans('messages.NO_SUBSCRIPTION'), 403);
            }



            if ($advertisement->is_publish == true) {
                return $this->sendError(trans('messages.ADVERTISEMENT_ALREADY_PUBLISHED'));
            }

            $advertisement->is_sold = false;
            $advertisement->is_publish = true;
            $advertisement->is_draft = false;
            $advertisement->save();
            return $this->sendSuccess(trans('messages.ADVERTISEMENT_PUBLISHED_SUCCESS'));
        } catch (Exception $th) {
            return $this->sendError($th->getMessage());
        }
    }

    public function UploadAdImage(AdImageRequest $request, AdvertiseAction $action, $adId)
    {
        try {
            $response = $action->upload($request, $adId);
            return $this->sendSuccess($response->message, ['uuid' =>  $response->uuid, 'path' => $response->Path],);
        } catch (Exception $e) {
            return response()->json(['status' => 'error', 'message' => $e->getMessage()], 500);
        }
    }

    public function DeleteAdImage($adId, AdvertiseAction $action, $id = null)
    {
        try {

            $response = $action->destroyImage($adId, $id);
            return $this->sendSuccess(trans("messages.ADVERTISE_IMAGE_DELETED_SUCCESSFULLY"), $response);
        } catch (Exception $e) {

            return response()->json(['status' => 'error', 'message' => $e->getMessage()], 500);
        }
    }

    public function Destroy($adId, AdvertiseAction $action)
    {
        try {

            $response = $action->destroy($adId);
            return $this->sendSuccess($response);
        } catch (Exception $e) {

            return response()->json(['status' => 'error', 'message' => $e->getMessage()], 500);
        }
    }

    public function GetList(Request $request)
    {
        try {
            $list = Advertisement::GetAdvertises($request);
            return $this->sendSuccess(trans('messages.OK'), $list);
        } catch (Exception $th) {
            return $this->sendError($th->getMessage());
        }
    }
}

Youez - 2016 - github.com/yon3zu
LinuXploit