bikyline
Members-
Posts
80 -
Joined
-
Last visited
Profile Information
-
Activity
Agency
Recent Profile Visitors
1,507,787 profile views
bikyline's Achievements
Newbie (1/14)
0
Reputation
-
Liegt das am Hoster ? sicher ?
-
Hab ich aber trotzdem das problem und bei der neuen version das gleiche problem
-
sorry hilft nicht weiter. werde mich langsam nach andere shopprogramme umsehen.
-
<?php /** * 2007-2017 PrestaShop * * NOTICE OF LICENSE * * This source file is subject to the Open Software License (OSL 3.0) * that is bundled with this package in the file LICENSE.txt. * It is also available through the world-wide-web at this URL: * https://opensource.org/licenses/OSL-3.0 * If you did not receive a copy of the license and are unable to * obtain it through the world-wide-web, please send an email * to [email protected] so we can send you a copy immediately. * * DISCLAIMER * * Do not edit or add to this file if you wish to upgrade PrestaShop to newer * versions in the future. If you wish to customize PrestaShop for your * needs please refer to http://www.prestashop.com for more information. * * @author PrestaShop SA <[email protected]> * @copyright 2007-2017 PrestaShop SA * @license https://opensource.org/licenses/OSL-3.0 Open Software License (OSL 3.0) * International Registered Trademark & Property of PrestaShop SA */ use PrestaShop\PrestaShop\Core\Addon\Module\ModuleManagerBuilder; class AdminDashboardControllerCore extends AdminController { public function __construct() { $this->bootstrap = true; $this->display = 'view'; parent::__construct(); if (Tools::isSubmit('profitability_conf') || Tools::isSubmit('submitOptionsconfiguration')) { $this->fields_options = $this->getOptionFields(); } } public function setMedia() { parent::setMedia(); $this->addJqueryUI('ui.datepicker'); $this->addJS(array( _PS_JS_DIR_.'vendor/d3.v3.min.js', __PS_BASE_URI__.$this->admin_webpath.'/themes/'.$this->bo_theme.'/js/vendor/nv.d3.min.js', _PS_JS_DIR_.'/admin/dashboard.js', )); $this->addCSS(__PS_BASE_URI__.$this->admin_webpath.'/themes/'.$this->bo_theme.'/css/vendor/nv.d3.css'); } public function initPageHeaderToolbar() { $this->page_header_toolbar_title = $this->trans('Dashboard', array(), 'Admin.Dashboard.Feature'); $this->page_header_toolbar_btn['switch_demo'] = array( 'desc' => $this->trans('Demo mode', array(), 'Admin.Dashboard.Feature'), 'icon' => 'process-icon-toggle-'.(Configuration::get('PS_DASHBOARD_SIMULATION') ? 'on' : 'off'), 'help' => $this->trans('This mode displays sample data so you can try your dashboard without real numbers.', array(), 'Admin.Dashboard.Help') ); parent::initPageHeaderToolbar(); // Remove the last element on this controller to match the title with the rule of the others array_pop($this->meta_title); } protected function getOptionFields() { $forms = array(); $currency = new Currency(Configuration::get('PS_CURRENCY_DEFAULT')); $carriers = Carrier::getCarriers((int) $this->context->language->id, true, false, false, null, Carrier::ALL_CARRIERS); $modules = Module::getModulesOnDisk(true); $forms = array( 'payment' => array('title' => $this->trans('Average bank fees per payment method', array(), 'Admin.Dashboard.Feature'), 'id' => 'payment'), 'carriers' => array('title' => $this->trans('Average shipping fees per shipping method', array(), 'Admin.Dashboard.Feature'), 'id' => 'carriers'), 'other' => array('title' => $this->trans('Other settings', array(), 'Admin.Dashboard.Feature'), 'id' => 'other') ); foreach ($forms as &$form) { $form['icon'] = 'tab-preferences'; $form['fields'] = array(); $form['submit'] = array('title' => $this->trans('Save', array(), 'Admin.Actions')); } foreach ($modules as $module) { if (isset($module->tab) && $module->tab == 'payments_gateways' && $module->id) { $moduleClass = Module::getInstanceByName($module->name); if (!$moduleClass->isEnabledForShopContext()) { continue; } $forms['payment']['fields']['CONF_'.strtoupper($module->name).'_FIXED'] = array( 'title' => $module->displayName, 'desc' => $this->trans( 'Choose a fixed fee for each order placed in %currency% with %module%.', array( '%currency' => $currency->iso_code, '%module%' => $module->displayName, ), 'Admin.Dashboard.Help' ), 'validation' => 'isPrice', 'cast' => 'floatval', 'type' => 'text', 'defaultValue' => '0', 'suffix' => $currency->iso_code ); $forms['payment']['fields']['CONF_'.strtoupper($module->name).'_VAR'] = array( 'title' => $module->displayName, 'desc' => $this->trans( 'Choose a variable fee for each order placed in %currency% with %module%. It will be applied on the total paid with taxes.', array( '%currency' => $currency->iso_code, '%module%' => $module->displayName, ), 'Admin.Dashboard.Help' ), 'validation' => 'isPercentage', 'cast' => 'floatval', 'type' => 'text', 'defaultValue' => '0', 'suffix' => '%' ); if (Currency::isMultiCurrencyActivated()) { $forms['payment']['fields']['CONF_'.strtoupper($module->name).'_FIXED_FOREIGN'] = array( 'title' => $module->displayName, 'desc' => $this->trans( 'Choose a fixed fee for each order placed with a foreign currency with %module%.', array( '%module%' => $module->displayName ), 'Admin.Dashboard.Help'), 'validation' => 'isPrice', 'cast' => 'floatval', 'type' => 'text', 'defaultValue' => '0', 'suffix' => $currency->iso_code ); $forms['payment']['fields']['CONF_'.strtoupper($module->name).'_VAR_FOREIGN'] = array( 'title' => $module->displayName, 'desc' => $this->trans( 'Choose a variable fee for each order placed with a foreign currency with %module%. It will be applied on the total paid with taxes.', array('%module%' => $module->displayName), 'Admin.Dashboard.Help' ), 'validation' => 'isPercentage', 'cast' => 'floatval', 'type' => 'text', 'defaultValue' => '0', 'suffix' => '%' ); } } } foreach ($carriers as $carrier) { $forms['carriers']['fields']['CONF_'.strtoupper($carrier['id_reference']).'_SHIP'] = array( 'title' => $carrier['name'], 'desc' => $this->trans( 'For the carrier named %s, indicate the domestic delivery costs in percentage of the price charged to customers.', array( '%s' => $carrier['name'], ), 'Admin.Dashboard.Help' ), 'validation' => 'isPercentage', 'cast' => 'floatval', 'type' => 'text', 'defaultValue' => '0', 'suffix' => '%' ); $forms['carriers']['fields']['CONF_'.strtoupper($carrier['id_reference']).'_SHIP_OVERSEAS'] = array( 'title' => $carrier['name'], 'desc' => $this->trans( 'For the carrier named %s, indicate the overseas delivery costs in percentage of the price charged to customers.', array( '%s' => $carrier['name'], ), 'Admin.Dashboard.Help' ), 'validation' => 'isPercentage', 'cast' => 'floatval', 'type' => 'text', 'defaultValue' => '0', 'suffix' => '%' ); } $forms['carriers']['description'] = $this->trans('Method: Indicate the percentage of your carrier margin. For example, if you charge $10 of shipping fees to your customer for each shipment, but you really pay $4 to this carrier, then you should indicate "40" in the percentage field.', array(), 'Admin.Dashboard.Help'); $forms['other']['fields']['CONF_AVERAGE_PRODUCT_MARGIN'] = array( 'title' => $this->trans('Average gross margin percentage', array(), 'Admin.Dashboard.Feature'), 'desc' => $this->trans('You should calculate this percentage as follows: ((total sales revenue) - (cost of goods sold)) / (total sales revenue) * 100. This value is only used to calculate the Dashboard approximate gross margin, if you do not specify the wholesale price for each product.', array(), 'Admin.Dashboard.Help'), 'validation' => 'isPercentage', 'cast' => 'intval', 'type' => 'text', 'defaultValue' => '0', 'suffix' => '%' ); $forms['other']['fields']['CONF_ORDER_FIXED'] = array( 'title' => $this->trans('Other fees per order', array(), 'Admin.Dashboard.Feature'), 'desc' => $this->trans('You should calculate this value by making the sum of all of your additional costs per order.', array(), 'Admin.Dashboard.Help'), 'validation' => 'isPrice', 'cast' => 'floatval', 'type' => 'text', 'defaultValue' => '0', 'suffix' => $currency->iso_code ); Media::addJsDef(array( 'dashboard_ajax_url' => $this->context->link->getAdminLink('AdminDashboard'), 'read_more' => '', )); return $forms; } public function renderView() { if (Tools::isSubmit('profitability_conf')) { return parent::renderOptions(); } // $translations = array( // 'Calendar' => $this->trans('Calendar', array(),'Admin.Global'), // 'Day' => $this->trans('Day', array(), 'Admin.Global'), // 'Month' => $this->trans('Month', array(), 'Admin.Global'), // 'Year' => $this->trans('Year', array(), 'Admin.Global'), // 'From' => $this->trans('From:', array(), 'Admin.Global'), // 'To' => $this->trans('To:', array(), 'Admin.Global'), // 'Save' => $this->trans('Save', array(), 'Admin.Global') // ); $testStatsDateUpdate = $this->context->cookie->__get('stats_date_update'); if (!empty($testStatsDateUpdate) && $this->context->cookie->__get('stats_date_update') < strtotime(date('Y-m-d'))) { switch ($this->context->employee->preselect_date_range) { case 'day': $date_from = date('Y-m-d'); $date_to = date('Y-m-d'); break; case 'prev-day': $date_from = date('Y-m-d', strtotime('-1 day')); $date_to = date('Y-m-d', strtotime('-1 day')); break; case 'month': default: $date_from = date('Y-m-01'); $date_to = date('Y-m-d'); break; case 'prev-month': $date_from = date('Y-m-01', strtotime('-1 month')); $date_to = date('Y-m-t', strtotime('-1 month')); break; case 'year': $date_from = date('Y-01-01'); $date_to = date('Y-m-d'); break; case 'prev-year': $date_from = date('Y-m-01', strtotime('-1 year')); $date_to = date('Y-12-t', strtotime('-1 year')); break; } $this->context->employee->stats_date_from = $date_from; $this->context->employee->stats_date_to = $date_to; $this->context->employee->update(); $this->context->cookie->__set('stats_date_update', strtotime(date('Y-m-d'))); $this->context->cookie->write(); } $calendar_helper = new HelperCalendar(); $calendar_helper->setDateFrom(Tools::getValue('date_from', $this->context->employee->stats_date_from)); $calendar_helper->setDateTo(Tools::getValue('date_to', $this->context->employee->stats_date_to)); $stats_compare_from = $this->context->employee->stats_compare_from; $stats_compare_to = $this->context->employee->stats_compare_to; if (is_null($stats_compare_from) || $stats_compare_from == '0000-00-00') { $stats_compare_from = null; } if (is_null($stats_compare_to) || $stats_compare_to == '0000-00-00') { $stats_compare_to = null; } $calendar_helper->setCompareDateFrom($stats_compare_from); $calendar_helper->setCompareDateTo($stats_compare_to); $calendar_helper->setCompareOption(Tools::getValue('compare_date_option', $this->context->employee->stats_compare_option)); $params = array( 'date_from' => $this->context->employee->stats_date_from, 'date_to' => $this->context->employee->stats_date_to ); $moduleManagerBuilder = ModuleManagerBuilder::getInstance(); $moduleManager = $moduleManagerBuilder->build(); $this->tpl_view_vars = array( 'date_from' => $this->context->employee->stats_date_from, 'date_to' => $this->context->employee->stats_date_to, 'hookDashboardZoneOne' => Hook::exec('dashboardZoneOne', $params), 'hookDashboardZoneTwo' => Hook::exec('dashboardZoneTwo', $params), //'translations' => $translations, 'action' => '#', 'warning' => $this->getWarningDomainName(), 'new_version_url' => Tools::getCurrentUrlProtocolPrefix()._PS_API_DOMAIN_.'/version/check_version.php?v='._PS_VERSION_.'&lang='.$this->context->language->iso_code.'&autoupgrade='.(int)($moduleManager->isInstalled('autoupgrade') && $moduleManager->isEnabled('autoupgrade')).'&hosted_mode='.(int)defined('_PS_HOST_MODE_'), 'dashboard_use_push' => Configuration::get('PS_DASHBOARD_USE_PUSH'), 'calendar' => $calendar_helper->generate(), 'PS_DASHBOARD_SIMULATION' => Configuration::get('PS_DASHBOARD_SIMULATION'), 'datepickerFrom' => Tools::getValue('datepickerFrom', $this->context->employee->stats_date_from), 'datepickerTo' => Tools::getValue('datepickerTo', $this->context->employee->stats_date_to), 'preselect_date_range' => Tools::getValue('preselectDateRange', $this->context->employee->preselect_date_range) ); return parent::renderView(); } public function postProcess() { if (Tools::isSubmit('submitDateRealTime')) { if ($use_realtime = (int)Tools::getValue('submitDateRealTime')) { $this->context->employee->stats_date_from = date('Y-m-d'); $this->context->employee->stats_date_to = date('Y-m-d'); $this->context->employee->stats_compare_option = HelperCalendar::DEFAULT_COMPARE_OPTION; $this->context->employee->stats_compare_from = null; $this->context->employee->stats_compare_to = null; $this->context->employee->update(); } Configuration::updateValue('PS_DASHBOARD_USE_PUSH', $use_realtime); } if (Tools::isSubmit('submitDateRange')) { if (!Validate::isDate(Tools::getValue('date_from')) || !Validate::isDate(Tools::getValue('date_to'))) { $this->errors[] = $this->trans('The selected date range is not valid.', array(), 'Admin.Notifications.Error'); } if (Tools::getValue('datepicker_compare')) { if (!Validate::isDate(Tools::getValue('compare_date_from')) || !Validate::isDate(Tools::getValue('compare_date_to'))) { $this->errors[] = $this->trans('The selected date range is not valid.', array(), 'Admin.Notifications.Error'); } } if (!count($this->errors)) { $this->context->employee->stats_date_from = Tools::getValue('date_from'); $this->context->employee->stats_date_to = Tools::getValue('date_to'); $this->context->employee->preselect_date_range = Tools::getValue('preselectDateRange'); if (Tools::getValue('datepicker_compare')) { $this->context->employee->stats_compare_from = Tools::getValue('compare_date_from'); $this->context->employee->stats_compare_to = Tools::getValue('compare_date_to'); $this->context->employee->stats_compare_option = Tools::getValue('compare_date_option'); } else { $this->context->employee->stats_compare_from = null; $this->context->employee->stats_compare_to = null; $this->context->employee->stats_compare_option = HelperCalendar::DEFAULT_COMPARE_OPTION; } $this->context->employee->update(); } } parent::postProcess(); } protected function getWarningDomainName() { $warning = false; if (Shop::isFeatureActive()) { return; } $shop = Context::getContext()->shop; if ($_SERVER['HTTP_HOST'] != $shop->domain && $_SERVER['HTTP_HOST'] != $shop->domain_ssl && Tools::getValue('ajax') == false && !defined('_PS_HOST_MODE_')) { $warning = $this->trans('You are currently connected under the following domain name:', array(), 'Admin.Dashboard.Notification').' <span style="color: #CC0000;">'.$_SERVER['HTTP_HOST'].'</span><br />'; if (Configuration::get('PS_MULTISHOP_FEATURE_ACTIVE')) { $warning .= $this->trans( 'This is different from the shop domain name set in the Multistore settings: "%s".', array( '%s' => $shop->domain ), 'Admin.Dashboard.Notification' ).$this->trans( 'If this is your main domain, please {link}change it now{/link}.', array( '{link}' => '<a href="index.php?controller=AdminShopUrl&id_shop_url='.(int)$shop->id.'&updateshop_url&token='.Tools::getAdminTokenLite('AdminShopUrl').'">', '{/link}' => '</a>', ), 'Admin.Dashboard.Notification' ); } else { $warning .= $this->trans('This is different from the domain name set in the "SEO & URLs" tab.', array(), 'Admin.Dashboard.Notification').' '.$this->trans( 'If this is your main domain, please {link}change it now{/link}.', array( '{link}' => '<a href="index.php?controller=AdminMeta&token='.Tools::getAdminTokenLite('AdminMeta').'#meta_fieldset_shop_url">', '{/link}' => '</a>' ), 'Admin.Dashboard.Notification' ); } } return $warning; } public function ajaxProcessRefreshDashboard() { $id_module = null; if ($module = Tools::getValue('module')) { $module_obj = Module::getInstanceByName($module); if (Validate::isLoadedObject($module_obj)) { $id_module = $module_obj->id; } } $params = array( 'date_from' => $this->context->employee->stats_date_from, 'date_to' => $this->context->employee->stats_date_to, 'compare_from' => $this->context->employee->stats_compare_from, 'compare_to' => $this->context->employee->stats_compare_to, 'dashboard_use_push' => (int)Tools::getValue('dashboard_use_push'), 'extra' => (int)Tools::getValue('extra') ); die(json_encode(Hook::exec('dashboardData', $params, $id_module, true, true, (int)Tools::getValue('dashboard_use_push')))); } public function ajaxProcessSetSimulationMode() { Configuration::updateValue('PS_DASHBOARD_SIMULATION', (int)Tools::getValue('PS_DASHBOARD_SIMULATION')); die('k'.Configuration::get('PS_DASHBOARD_SIMULATION').'k'); } public function ajaxProcessGetBlogRss() { $return = array('has_errors' => false, 'rss' => array()); if (!$this->isFresh('/config/xml/blog-'.$this->context->language->iso_code.'.xml', 86400)) { if (!$this->refresh('/config/xml/blog-'.$this->context->language->iso_code.'.xml', _PS_API_URL_.'/rss/blog/blog-'.$this->context->language->iso_code.'.xml')) { $return['has_errors'] = true; } } if (!$return['has_errors']) { $rss = @simplexml_load_file(_PS_ROOT_DIR_.'/config/xml/blog-'.$this->context->language->iso_code.'.xml'); if (!$rss) { $return['has_errors'] = true; } $articles_limit = 2; if ($rss) { foreach ($rss->channel->item as $item) { if ($articles_limit > 0 && Validate::isCleanHtml((string)$item->title) && Validate::isCleanHtml((string)$item->description) && isset($item->link) && isset($item->title)) { if (in_array($this->context->mode, array(Context::MODE_HOST, Context::MODE_HOST_CONTRIB))) { $utm_content = 'cloud'; } else { $utm_content = 'download'; } $shop_default_country_id = (int)Configuration::get('PS_COUNTRY_DEFAULT'); $shop_default_iso_country = (string)Tools::strtoupper(Country::getIsoById($shop_default_country_id)); $analytics_params = array('utm_source' => 'back-office', 'utm_medium' => 'rss', 'utm_campaign' => 'back-office-'.$shop_default_iso_country, 'utm_content' => $utm_content ); $url_query = parse_url($item->link, PHP_URL_QUERY); parse_str($url_query, $link_query_params); if ($link_query_params) { $full_url_params = array_merge($link_query_params, $analytics_params); $base_url = explode('?', (string)$item->link); $base_url = (string)$base_url[0]; $article_link = $base_url.'?'.http_build_query($full_url_params); } else { $article_link = (string)$item->link.'?'.http_build_query($analytics_params); } $return['rss'][] = array( 'date' => Tools::displayDate(date('Y-m-d', strtotime((string)$item->pubDate))), 'title' => (string)Tools::htmlentitiesUTF8($item->title), 'short_desc' => Tools::truncateString(strip_tags((string)$item->description), 150), 'link' => (string)$article_link, ); } else { break; } $articles_limit --; } } } die(json_encode($return)); } public function ajaxProcessSaveDashConfig() { $return = array('has_errors' => false, 'errors' => array()); $module = Tools::getValue('module'); $hook = Tools::getValue('hook'); $configs = Tools::getValue('configs'); $params = array( 'date_from' => $this->context->employee->stats_date_from, 'date_to' => $this->context->employee->stats_date_to ); if (Validate::isModuleName($module) && $module_obj = Module::getInstanceByName($module)) { if (Validate::isLoadedObject($module_obj) && method_exists($module_obj, 'validateDashConfig')) { $return['errors'] = $module_obj->validateDashConfig($configs); } if (!count($return['errors'])) { if (Validate::isLoadedObject($module_obj) && method_exists($module_obj, 'saveDashConfig')) { $return['has_errors'] = $module_obj->saveDashConfig($configs); } elseif (is_array($configs) && count($configs)) { foreach ($configs as $name => $value) { if (Validate::isConfigName($name)) { Configuration::updateValue($name, $value); } } } } else { $return['has_errors'] = true; } } if (Validate::isHookName($hook) && method_exists($module_obj, $hook)) { $return['widget_html'] = $module_obj->$hook($params); } die(json_encode($return)); } }
-
wie kann ich es beheben das problem ?
-
Meine Frage ist: Wenn ich backoffice aufrufe denn ist die weiss. Nach neuinstall. woran liegt es ?
-
Das ist eine Infos wie ich es gemacht habe. da es 2 weg gibt.
-
Ich hatte es normal entpackt denn auf server draufgezogen denn install.
-
Das war neu install. Hab grad aktiviert und meldet: FatalErrorException in AdminDashboardController.php line 0: Compile Error: Declaration of AdminDashboardControllerCore::setMedia() must be compatible with AdminControllerCore::setMedia($isNewTheme = false)
-
Ja und admin ordner umbenannt
-
Nach installieren vo prestoshop von 1.7.3.3 ist der backseite nicht erreichbar. Es ist weiss.
-
jetzt weiß ich immer noch nichts genaues. Wie sollte eine rechtsichere Onlineshop aussehen ? bzw was ist zu beachten ?
-
Aber wenn Prestshop Software install. ist doch alles rechtssicher ? ich frage da ich Anfänger in sachen Onlineshop bin. momentan übe ich mit Prestashop um zu gehen und vorraussichtlich (steht noch nicht fest) August werde ich Onlineshop officiell haben.
-
Danke Whiley Aber wie soll denn nach dem 13.Juni die Onlineshops Rechtsmässig aussehen ? welche module muß drin sein und welche empefhlenwert um ein rechtsmässige Onlineshop betreiben zu dürfen ?
-
dies: http://www.e-commerce-magazin.de/ecm/news/onlinerecht-neues-widerrufsrecht-zum-13-juni-2014 auch seit letztes jahr wurde auch was geändert das ich nicht genau weiß