remember('settings.' . $name, 24 * 60 * 60, function () use ($name) { return self::where('name', $name)->first(); }); } $value = []; if (!empty($static) and !empty($static->value) and isset($static->value)) { $value = json_decode($static->value, true); } if (!empty($value) and !empty($key)) { if (isset($value[$key])) { return $value[$key]; } else { return null; } } if (!empty($key) and (empty($value) or count($value) < 1)) { return ''; } return $value; } /** * @param null $page => home, search, categories, login, register, about, contact * @return array => [title, description] */ static function getSeoMetas($page = null) { return self::getSetting(self::$seoMetas, self::$seoMetasName, $page); } /** * @return array [title, image, link] */ static function getSocials() { return self::getSetting(self::$socials, self::$socialsName); } /** * @return array [title, items => [title, link]] */ static function getFooterColumns() { return self::getSetting(self::$footer, self::$footerName); } /** * @return array [site_name, site_email, site_language, user_languages, rtl_languages, fav_icon, logo, footer_logo, rtl_layout, home hero1 is active, home hero2 is active, content_translate ] */ static function getGeneralSettings($key = null) { return self::getSetting(self::$general, self::$generalName, $key); } /** * @return array [] */ static function getFeaturesSettings($key = null) { return self::getSetting(self::$features, self::$featuresName, $key); } /** * @return array [] */ static function getCookieSettings($key = null) { return self::getSetting(self::$cookieSettings, self::$cookieSettingsName, $key); } /** * @param $key * @return array|[commission, tax, minimum_payout, currency] */ static function getFinancialSettings($key = null) { return self::getSetting(self::$financial, self::$financialName, $key); } /** * @param $key * * @return array|string */ static function getFinancialCurrencySettings($key = null) { return self::getSetting(self::$currencySettings, self::$currencySettingsName, $key); } /** * @param $key * * @return array|string */ static function getCommissionSettings($key = null) { return self::getSetting(self::$commissionSettings, self::$commissionSettingsName, $key); } /** * @param string $section * @return array|[title, description, hero_background] */ static function getHomeHeroSettings($section = '1') { if ($section == "2") { return self::getSetting(self::$homeHero2, self::$homeHeroName2); } return self::getSetting(self::$homeHero, self::$homeHeroName); } /** * @return array|[title, description, background] */ static function getHomeVideoOrImageBoxSettings() { return self::getSetting(self::$homeVideoOrImage, self::$homeVideoOrImageName); } /** * @param null $page => login, register, remember_pass, search, categories, become_instructor, blog, instructors, user_avatar, user_cover * @return string|array => [all pages] */ static function getPageBackgroundSettings($page = null) { return self::getSetting(self::$pageBackground, self::$pageBackgroundName, $page); } /** * @param null $key => css, js * @return string|array => {css, js} */ static function getCustomCssAndJs($key = null) { return self::getSetting(self::$customCssJs, self::$customCssJsName, $key); } /** * @return array */ static function getReportReasons() { return self::getSetting(self::$reportReasons, self::$reportReasonsName); } /** * @param $template {String|nullable} * @return array */ static function getNotificationTemplates($template = null) { return self::getSetting(self::$notificationTemplates, self::$notificationTemplatesName, $template); } /** * @return array */ static function getOfflineBankSettings($key = null) { return self::getSetting(self::$offlineBanks, self::$offlineBanksName, $key); } /** * @return array */ static function getReferralSettings() { return self::getSetting(self::$referral, self::$referralName); } /** * @param $key * @return array */ static function getContactPageSettings($key = null) { return self::getSetting(self::$contactPage, self::$contactPageName, $key); } /** * @param $key * @return array */ static function get404ErrorPageSettings($key = null) { return self::getSetting(self::$Error404Page, self::$Error404PageName, $key); } /** * @param $key * @return array */ static function getHomeSectionsSettings($key = null) { return self::getSetting(self::$homeSections, self::$homeSectionsName, $key); } /** * @param $key * @return array */ static function getNavbarLinksSettings($key = null) { return self::getSetting(self::$navbarLink, self::$navbarLinkName, $key); } /** * @return array */ static function getPanelSidebarSettings() { return self::getSetting(self::$panelSidebar, self::$panelSidebarName); } /** * @return array */ static function getFindInstructorsSettings() { return self::getSetting(self::$findInstructors, self::$findInstructorsName); } /** * @return array */ static function getRewardProgramSettings() { return self::getSetting(self::$rewardProgram, self::$rewardProgramName); } /** * @return array */ static function getRewardsSettings() { return self::getSetting(self::$rewardsSettings, self::$rewardsSettingsName); } /** * @return array */ static function getStoreSettings($key = null) { return self::getSetting(self::$storeSettings, self::$storeSettingsName, $key); } static function getBecomeInstructorSectionSettings() { return self::getSetting(self::$becomeInstructorSection, self::$becomeInstructorSectionName); } static function getForumSectionSettings() { return self::getSetting(self::$forumHomeSection, self::$forumHomeSectionName); } static function getRegistrationPackagesGeneralSettings($key = null) { return self::getSetting(self::$registrationPackagesGeneral, self::$registrationPackagesGeneralName, $key); } static function getRegistrationPackagesInstructorsSettings($key = null) { return self::getSetting(self::$registrationPackagesInstructors, self::$registrationPackagesInstructorsName, $key); } static function getRegistrationPackagesOrganizationsSettings($key = null) { return self::getSetting(self::$registrationPackagesOrganizations, self::$registrationPackagesOrganizationsName, $key); } static function getThemeColorsSettings() { return self::getSetting(self::$themeColors, self::$themeColorsName); } static function getThemeFontsSettings() { return self::getSetting(self::$themeFonts, self::$themeFontsName); } static function getMobileAppSettings($key = null) { return self::getSetting(self::$mobileAppSettings, self::$mobileAppSettingsName, $key); } static function getRemindersSettings($key = null) { return self::getSetting(self::$remindersSettings, self::$remindersSettingsName, $key); } static function getGeneralSecuritySettings($key = null) { return self::getSetting(self::$generalSecuritySettings, self::$generalSecuritySettingsName, $key); } static function getAdvertisingModalSettings($key = null) { return self::getSetting(self::$advertisingModal, self::$advertisingModalName, $key); } static function getOthersPersonalizationSettings($key = null) { return self::getSetting(self::$othersPersonalization, self::$othersPersonalizationName, $key); } static function getInstallmentsSettings($key = null) { return self::getSetting(self::$installmentsSettings, self::$installmentsSettingsName, $key); } static function getInstallmentsTermsSettings($key = null) { return self::getSetting(self::$installmentsTermsSettings, self::$installmentsTermsSettingsName, $key); } static function getRegistrationBonusSettings($key = null) { return self::getSetting(self::$registrationBonusSettings, self::$registrationBonusSettingsName, $key); } static function getRegistrationBonusTermsSettings($key = null) { return self::getSetting(self::$registrationBonusTermsSettings, self::$registrationBonusTermsSettingsName, $key); } static function getStatisticsSettings($key = null) { return self::getSetting(self::$statisticsSettings, self::$statisticsSettingsName, $key); } static function getMaintenanceSettings($key = null) { return self::getSetting(self::$maintenanceSettings, self::$maintenanceSettingsName, $key); } static function getRestrictionSettings($key = null) { return self::getSetting(self::$restrictionSettings, self::$restrictionSettingsName, $key); } static function getGeneralOptionsSettings($key = null) { return self::getSetting(self::$generalOptions, self::$generalOptionsName, $key); } static function getSMSChannelsSettings($key = null) { return self::getSetting(self::$smsChannelsSettings, self::$smsChannelsSettingName, $key); } static function getGiftsGeneralSettings($key = null) { return self::getSetting(self::$giftsGeneralSettings, self::$giftsGeneralSettingsName, $key); } static function getAiContentsSettingsName($key = null) { return self::getSetting(self::$aiContentsSettings, self::$aiContentsSettingsName, $key); } static function getCertificateMainSettings($key = null) { return self::getSetting(self::$certificateSettings, self::$certificateSettingsName, $key); } static function getAbandonedCartSettings($key = null) { return self::getSetting(self::$abandonedCartSettings, self::$abandonedCartSettingsName, $key); } }