mirror of
https://gitee.com/zongzhige/shopxo.git
synced 2024-11-30 02:49:03 +08:00
后台多语言处理
This commit is contained in:
parent
b355bb315a
commit
0070b30683
@ -32,22 +32,18 @@ class AppConfig extends Base
|
||||
*/
|
||||
public function Index()
|
||||
{
|
||||
// 模板数据
|
||||
// 导航
|
||||
$type = empty($this->data_request['type']) ? 'index' : $this->data_request['type'];
|
||||
$assign = [
|
||||
// 配置数据
|
||||
'data' => ConfigService::ConfigList(),
|
||||
// 静态数据
|
||||
'common_platform_type' => MyLang('common_platform_type'),
|
||||
'common_is_text_list' => MyLang('common_is_text_list'),
|
||||
'data' => ConfigService::ConfigList(),
|
||||
// 管理导航
|
||||
'nav_data' => MyLang('appconfig.base_nav_list'),
|
||||
// 页面导航
|
||||
'nav_type' => $type,
|
||||
];
|
||||
|
||||
// 导航/视图
|
||||
$nav_type = empty($this->data_request['nav_type']) ? 'base' : $this->data_request['nav_type'];
|
||||
$assign['nav_type'] = $nav_type;
|
||||
|
||||
// 模板赋值
|
||||
MyViewAssign($assign);
|
||||
return MyView($nav_type);
|
||||
return MyView($type);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -35,14 +35,12 @@ class Email extends Base
|
||||
// 导航
|
||||
$type = empty($this->data_request['type']) ? 'index' : $this->data_request['type'];
|
||||
$assign = [
|
||||
// 静态数据
|
||||
'common_is_text_list' => MyLang('common_is_text_list'),
|
||||
// 配置信息
|
||||
'data' => ConfigService::ConfigList(),
|
||||
'data' => ConfigService::ConfigList(),
|
||||
// 管理导航
|
||||
'nav_data' => MyLang('email.base_nav_list'),
|
||||
'nav_data' => MyLang('email.base_nav_list'),
|
||||
// 页面导航
|
||||
'nav_type' => $type,
|
||||
'nav_type' => $type,
|
||||
];
|
||||
MyViewAssign($assign);
|
||||
return MyView($type);
|
||||
|
@ -36,9 +36,11 @@ class Sms extends Base
|
||||
$type = empty($this->data_request['type']) ? 'index' : $this->data_request['type'];
|
||||
$assign = [
|
||||
// 配置信息
|
||||
'data' => ConfigService::ConfigList(),
|
||||
'data' => ConfigService::ConfigList(),
|
||||
// 管理导航
|
||||
'nav_data' => MyLang('sms.base_nav_list'),
|
||||
// 页面导航
|
||||
'nav_type' => $type,
|
||||
'nav_type' => $type,
|
||||
];
|
||||
MyViewAssign($assign);
|
||||
return MyView($type);
|
||||
|
@ -56,6 +56,8 @@ class Theme extends Base
|
||||
$assign = [
|
||||
// 导航参数
|
||||
'view_type' => $this->view_type,
|
||||
// 基础导航
|
||||
'base_nav' => MyLang('appmini.base_nav_list'),
|
||||
// 应用商店
|
||||
'store_theme_url' => StoreService::StoreThemeUrl(),
|
||||
];
|
||||
|
@ -36,6 +36,7 @@ class Admin
|
||||
*/
|
||||
public function Run($params = [])
|
||||
{
|
||||
$lang = MyLang('admin.form_table');
|
||||
return [
|
||||
// 基础配置
|
||||
'base' => [
|
||||
@ -58,7 +59,7 @@ class Admin
|
||||
'width' => 80,
|
||||
],
|
||||
[
|
||||
'label' => '管理员',
|
||||
'label' => $lang['username'],
|
||||
'view_type' => 'field',
|
||||
'view_key' => 'username',
|
||||
'is_sort' => 1,
|
||||
@ -68,7 +69,7 @@ class Admin
|
||||
],
|
||||
],
|
||||
[
|
||||
'label' => '状态',
|
||||
'label' => $lang['username'],
|
||||
'view_type' => 'field',
|
||||
'view_key' => 'status',
|
||||
'view_data_key' => 'name',
|
||||
@ -84,7 +85,7 @@ class Admin
|
||||
],
|
||||
],
|
||||
[
|
||||
'label' => '性别',
|
||||
'label' => $lang['username'],
|
||||
'view_type' => 'field',
|
||||
'view_key' => 'gender',
|
||||
'view_data_key' => 'name',
|
||||
@ -100,7 +101,7 @@ class Admin
|
||||
],
|
||||
],
|
||||
[
|
||||
'label' => '手机',
|
||||
'label' => $lang['mobile'],
|
||||
'view_type' => 'field',
|
||||
'view_key' => 'mobile',
|
||||
'is_sort' => 1,
|
||||
@ -110,7 +111,7 @@ class Admin
|
||||
],
|
||||
],
|
||||
[
|
||||
'label' => '邮箱',
|
||||
'label' => $lang['email'],
|
||||
'view_type' => 'field',
|
||||
'view_key' => 'email',
|
||||
'is_sort' => 1,
|
||||
@ -120,7 +121,7 @@ class Admin
|
||||
],
|
||||
],
|
||||
[
|
||||
'label' => '角色组',
|
||||
'label' => $lang['role_name'],
|
||||
'view_type' => 'field',
|
||||
'view_key' => 'role_name',
|
||||
'is_sort' => 1,
|
||||
@ -135,7 +136,7 @@ class Admin
|
||||
],
|
||||
],
|
||||
[
|
||||
'label' => '登录次数',
|
||||
'label' => $lang['login_total'],
|
||||
'view_type' => 'field',
|
||||
'view_key' => 'login_total',
|
||||
'is_sort' => 1,
|
||||
@ -144,7 +145,7 @@ class Admin
|
||||
],
|
||||
],
|
||||
[
|
||||
'label' => '最后登录时间',
|
||||
'label' => $lang['login_time'],
|
||||
'view_type' => 'field',
|
||||
'view_key' => 'login_time',
|
||||
'is_sort' => 1,
|
||||
@ -153,7 +154,7 @@ class Admin
|
||||
],
|
||||
],
|
||||
[
|
||||
'label' => '创建时间',
|
||||
'label' => $lang['add_time'],
|
||||
'view_type' => 'field',
|
||||
'view_key' => 'add_time',
|
||||
'is_sort' => 1,
|
||||
@ -162,7 +163,7 @@ class Admin
|
||||
],
|
||||
],
|
||||
[
|
||||
'label' => '更新时间',
|
||||
'label' => $lang['upd_time'],
|
||||
'view_type' => 'field',
|
||||
'view_key' => 'upd_time',
|
||||
'is_sort' => 1,
|
||||
|
@ -145,7 +145,7 @@ class UserAddress
|
||||
'label' => '经纬度',
|
||||
'view_type' => 'module',
|
||||
'view_key' => 'useraddress/module/position',
|
||||
'grid_size' => 'sm',
|
||||
'width' => 260,
|
||||
],
|
||||
[
|
||||
'label' => '身份证信息',
|
||||
|
@ -180,7 +180,7 @@ class Warehouse
|
||||
'label' => '经纬度',
|
||||
'view_type' => 'module',
|
||||
'view_key' => 'warehouse/module/position',
|
||||
'grid_size' => 'sm',
|
||||
'width' => 260,
|
||||
],
|
||||
[
|
||||
'label' => '创建时间',
|
||||
|
@ -129,6 +129,7 @@ class WarehouseGoods
|
||||
'view_key' => 'warehousegoods/module/spec_inventory',
|
||||
'is_sort' => 1,
|
||||
'grid_size' => 'lg',
|
||||
'is_detail' => 0,
|
||||
'params_where_name' => 'spec_inventory',
|
||||
'search_config' => [
|
||||
'form_type' => 'section',
|
||||
|
@ -79,6 +79,93 @@ return [
|
||||
],
|
||||
],
|
||||
|
||||
// 用户
|
||||
'user' => [
|
||||
'base_nav_title' => 'User',
|
||||
// 表单
|
||||
'form_item_system_type' => 'System Type',
|
||||
'form_item_system_type_tips' => 'default',
|
||||
'form_item_system_type_message' => 'System type 2~60 characters',
|
||||
'form_item_username' => 'Username',
|
||||
'form_item_username_message' => 'User name 2~30 characters',
|
||||
'form_item_nickname' => 'Nickname',
|
||||
'form_item_nickname_message' => 'Nickname can be up to 30 characters',
|
||||
'form_item_mobile' => 'Phone Number',
|
||||
'form_item_mobile_message' => 'Mobile number format error',
|
||||
'form_item_email' => 'E-mail',
|
||||
'form_item_email_message' => 'Email format error',
|
||||
'form_item_alipay_openid' => 'Alipay openid',
|
||||
'form_item_alipay_openid_message' => 'Please fill in Alipay openid',
|
||||
'form_item_baidu_openid' => 'Baidu openid',
|
||||
'form_item_baidu_openid_message' => 'Please fill in Baidu openid',
|
||||
'form_item_toutiao_openid' => 'Toutiao openid',
|
||||
'form_item_toutiao_openid_message' => 'Please fill in the header openid',
|
||||
'form_item_toutiao_unionid' => 'Toutiao unionid',
|
||||
'form_item_toutiao_unionid_message' => 'Please fill in the headline unionid',
|
||||
'form_item_qq_openid' => 'QQopenid',
|
||||
'form_item_qq_openid_message' => 'Please fill in QQ openid',
|
||||
'form_item_qq_unionid' => 'QQunionid',
|
||||
'form_item_qq_unionid_message' => 'Please fill in QQuinonid',
|
||||
'form_item_weixin_openid' => 'WeChat openid',
|
||||
'form_item_weixin_openid_message' => 'Please fill in WeChat openid',
|
||||
'form_item_weixin_unionid' => 'WeChat unionid',
|
||||
'form_item_weixin_unionid_message' => 'Please fill in WeChat unionid',
|
||||
'form_item_web_weixin_openid' => 'WeChat webopenid',
|
||||
'form_item_web_weixin_openid_message' => 'Please fill in WeChat webopenid',
|
||||
'form_item_kuaishou_openid' => 'Kwai openid',
|
||||
'form_item_kuaishou_openid_message' => 'Please fill in the Kwai openid',
|
||||
'form_item_province' => 'Province',
|
||||
'form_item_province_message' => 'Maximum 60 characters in the province',
|
||||
'form_item_city' => 'City',
|
||||
'form_item_city_message' => 'Maximum 60 characters in the city',
|
||||
'form_item_county' => 'District/County',
|
||||
'form_item_county_message' => '60 characters at most in the district/county',
|
||||
'form_item_address' => 'Detail Address',
|
||||
'form_item_address_message' => 'Detail Address format is up to 80 characters',
|
||||
'form_item_integral' => 'Valid Integral',
|
||||
'form_item_integral_message' => 'Please enter valid points',
|
||||
'form_item_locking_integral' => 'Lock Integral',
|
||||
'form_item_locking_integral_message' => 'Please enter locked points',
|
||||
'form_item_birthday' => 'Birthday',
|
||||
'form_item_birthday_message' => 'Incorrect birthday format',
|
||||
'form_item_referrer' => 'Invite User ID',
|
||||
'form_item_referrer_message' => 'Please enter the invitation user ID',
|
||||
'form_item_pwd' => 'Login Password',
|
||||
'form_item_pwd_tips' => 'Enter to change the password',
|
||||
'form_item_pwd_message' => 'Login password format is between 6 and 18 characters',
|
||||
],
|
||||
|
||||
// 用户地址
|
||||
'useraddress' => [
|
||||
'base_nav_title' => 'User Address',
|
||||
// 表单
|
||||
'form_item_user_id' => 'User ID',
|
||||
'form_item_user_id_message' => 'Please fill in user id',
|
||||
'form_item_name' => 'Full Name',
|
||||
'form_item_name_message' => 'Name format is between 2 and 16 characters',
|
||||
'form_item_alias' => 'Alias',
|
||||
'form_item_alias_message' => 'Alias format can be up to 16 characters',
|
||||
'form_item_tel' => 'Telephone',
|
||||
'form_item_tel_message' => 'Incorrect phone format',
|
||||
'form_item_address' => 'Detailed Address',
|
||||
'form_item_address_message' => 'Detailed address format is between 1 and 80 characters',
|
||||
'form_item_idcard_name' => 'ID Card Name',
|
||||
'form_item_idcard_name_tips' => 'Optional, please be consistent with the uploaded ID name',
|
||||
'form_item_idcard_name_message' => 'The name format of ID card can be up to 16 characters',
|
||||
'form_item_idcard_number' => 'ID No',
|
||||
'form_item_idcard_number_tips' => 'Optional, please be consistent with the uploaded ID number',
|
||||
'form_item_idcard_number_message' => 'ID card number format can be up to 18 characters',
|
||||
'form_item_idcard_images' => 'ID Card Photo',
|
||||
'form_item_idcard_images_tips' => 'For selective transmission, please use the original ID card to shoot, and the picture should be clear',
|
||||
'form_item_idcard_front_button_name' => 'Upload IDCard Front Pictures',
|
||||
'form_item_idcard_back_button_name' => 'Upload IDCard Back Pictures',
|
||||
'form_item_idcard_no_user_tips' => 'Associate users before uploading ID card images',
|
||||
// 详情
|
||||
'detail_user_address_idcard_name' => 'Full Name',
|
||||
'detail_user_address_idcard_number' => 'Number',
|
||||
'detail_user_address_idcard_pic' => 'Photo',
|
||||
],
|
||||
|
||||
// 站点设置
|
||||
'site' => [
|
||||
// 页面公共
|
||||
@ -303,12 +390,45 @@ return [
|
||||
'form_is_reply' => 'Reply or not',
|
||||
],
|
||||
|
||||
// 仓库管理
|
||||
'warehouse' => [
|
||||
'base_nav_title' => 'Warehouse',
|
||||
'top_tips_list' => [
|
||||
'1. The higher the weight value is, the higher the weight is. The inventory is deducted according to the weight.)',
|
||||
'2. The warehouse can only be soft-deleted, will not be available after deletion, and only the data in the database can be retained), and the associated commodity data can be deleted by itself',
|
||||
'3. The warehouse will be deactivated and deleted, and the associated commodity inventory will be released immediately',
|
||||
],
|
||||
// 表单
|
||||
'form_item_name' => 'Full Name',
|
||||
'form_item_name_message' => 'Name format is between 2 and 30 characters',
|
||||
'form_item_alias' => 'Alias',
|
||||
'form_item_alias_message' => 'Alias format can be up to 16 characters',
|
||||
'form_item_level' => 'Weight',
|
||||
'form_item_level_tips' => 'The higher the weight value, the higher the weight',
|
||||
'form_item_level_message' => 'Please enter a valid weight value',
|
||||
'form_item_contacts_name' => 'Contacts Name',
|
||||
'form_item_contacts_name_message' => 'Contact format is between 2 and 16 characters',
|
||||
'form_item_contacts_tel' => 'Contact Tel',
|
||||
'form_item_contacts_tel_message' => 'Please fill in the contact number',
|
||||
'form_item_address' => 'Detail Address',
|
||||
'form_item_address_message' => 'Address format is between 1 and 80 characters',
|
||||
],
|
||||
|
||||
// 仓库商品
|
||||
'warehousegoods' => [
|
||||
// 页面公共
|
||||
'page_common' => [
|
||||
'warehouse_choice_tips' => 'Please select a warehouse',
|
||||
],
|
||||
// 基础
|
||||
'no_spec_data_tips' => 'No specification data',
|
||||
'batch_setup_inventory_placeholder' => 'Batch set value',
|
||||
'base_spec_inventory_title' => 'Specification Inventory',
|
||||
// 表单
|
||||
'add_goods_title' => 'Goods Add',
|
||||
'form_item_warehouseg_placeholder' => 'Warehouse...',
|
||||
'form_item_warehouseg_message' => 'Please select a warehouse',
|
||||
'form_item_inventory_message' => 'Inventory quantity 0~100000000',
|
||||
],
|
||||
|
||||
// 管理员
|
||||
@ -348,6 +468,19 @@ return [
|
||||
'form_item_password_edit_tips' => 'Enter to change the password',
|
||||
'form_item_status' => 'Status',
|
||||
'form_item_status_message' => 'Please select user status',
|
||||
// 动态表格
|
||||
'form_table' => [
|
||||
'username' => 'Admin',
|
||||
'status' => 'Status',
|
||||
'gender' => 'Gender',
|
||||
'mobile' => 'Mobile',
|
||||
'email' => 'Email',
|
||||
'role_name' => 'Role Group',
|
||||
'login_total' => 'Number of Logins',
|
||||
'login_time' => 'Last Login Time',
|
||||
'add_time' => 'Creation Time',
|
||||
'upd_time' => 'Update Time',
|
||||
],
|
||||
],
|
||||
|
||||
// 协议
|
||||
@ -362,6 +495,15 @@ return [
|
||||
'view_detail_name' => 'View Details',
|
||||
],
|
||||
|
||||
// 手机配置
|
||||
'appconfig' => [
|
||||
// 基础导航
|
||||
'base_nav_list' => [
|
||||
['name' => 'BaseConfig', 'type' => 'index'],
|
||||
['name' => 'APP/Applet', 'type' => 'app'],
|
||||
],
|
||||
],
|
||||
|
||||
// 小程序管理
|
||||
'appmini' => [
|
||||
// 基础导航
|
||||
@ -381,11 +523,24 @@ return [
|
||||
'package_generate_tips' => 'The generation time is relatively long, please do not close the browser window!',
|
||||
],
|
||||
|
||||
// 短信设置
|
||||
'sms' => [
|
||||
// 基础导航
|
||||
'base_nav_list' => [
|
||||
['name' => 'Sms Settings', 'type' => 'index'],
|
||||
['name' => 'Message Template', 'type' => 'message'],
|
||||
],
|
||||
'top_tips' => 'AliCloud SMS management address',
|
||||
'top_to_aliyun_tips' => 'Click to buy SMS from AliCloud',
|
||||
'base_item_admin_title' => 'Admin',
|
||||
'base_item_index_title' => 'Home',
|
||||
],
|
||||
|
||||
// 邮箱设置
|
||||
'email' => [
|
||||
// 基础导航
|
||||
'base_nav_list' => [
|
||||
['name' => 'Mailbox Settings', 'type' => 'index'],
|
||||
['name' => 'Email Settings', 'type' => 'index'],
|
||||
['name' => 'Message Template', 'type' => 'message'],
|
||||
],
|
||||
'top_tips' => 'Due to some differences between different mailbox platforms and different configurations, the specific configuration of the mailbox platform is subject to the tutorial',
|
||||
@ -744,7 +899,7 @@ return [
|
||||
],
|
||||
]
|
||||
],
|
||||
'upload_top_tips_ps' => 'PS: If the above conditions are not met, the plug-in cannot be viewed. Put the plug-in into the. zip compression package to upload, and support multiple payment plug-ins in one compression',
|
||||
'upload_top_tips_ps' => 'PS: If the above conditions are not met, the plug-in cannot be viewed. Put the plug-in into the. zip compression package to upload, and support multiple payment plugins in one compression',
|
||||
// 表单
|
||||
'form_item_name' => 'Name',
|
||||
'form_item_name_message' => 'Name format 2~30 characters',
|
||||
@ -766,6 +921,18 @@ return [
|
||||
'form_item_website_url_message' => 'Incorrect format of official website address',
|
||||
],
|
||||
|
||||
// 主题管理
|
||||
'theme' => [
|
||||
'base_nav_list' => [
|
||||
['name' => 'Current Theme', 'type' => 'index'],
|
||||
['name' => 'Theme Install', 'type' => 'upload'],
|
||||
],
|
||||
'nav_store_theme_name' => 'More topic downloads',
|
||||
'list_author_title' => 'Author:',
|
||||
'list_version_title' => 'Applicable Version',
|
||||
'form_item_upload_tips' => 'Upload an application installation package in zip compression format',
|
||||
],
|
||||
|
||||
// 用户中心导航
|
||||
'appcenternav' => [
|
||||
'base_nav_title' => 'Mobile User Center Navigation',
|
||||
@ -821,11 +988,11 @@ return [
|
||||
'base_top_tips_one' => 'List sorting method [custom sorting ->earliest installation]',
|
||||
'base_top_tips_two' => 'Click and drag icon button to adjust plug-in call and display order',
|
||||
'base_open_sort_title' => 'Enable sorting',
|
||||
'data_list_author_title' => 'Author',
|
||||
'data_list_author_url_title' => 'HomePage',
|
||||
'data_list_version_title' => 'Version',
|
||||
'data_list_author_title' => 'Author:',
|
||||
'data_list_author_url_title' => 'HomePage:',
|
||||
'data_list_version_title' => 'Version:',
|
||||
'uninstall_confirm_tips' => 'Uninstallation may lose the basic configuration data of the plug-in. Is it unrecoverable and confirm the operation?',
|
||||
'not_install_divide_title' => 'The following plug-ins are not installed',
|
||||
'not_install_divide_title' => 'The following plugins are not installed',
|
||||
'delete_plugins_text' => '1. Delete apps only',
|
||||
'delete_plugins_text_tips' => '(Only delete the application code and keep the application data)',
|
||||
'delete_plugins_data_text' => '2. Delete app and delete data',
|
||||
@ -834,7 +1001,7 @@ return [
|
||||
'delete_plugins_button_name' => 'Delete apps only',
|
||||
'delete_plugins_data_button_name' => 'Delete apps and data',
|
||||
'cancel_delete_plugins_button_name' => 'Think again',
|
||||
'more_plugins_store_to_text' => 'Go to the app store to select more plug-ins to enrich the site >>',
|
||||
'more_plugins_store_to_text' => 'Go to the app store to select more plugins to enrich the site >>',
|
||||
'no_data_store_to_text' => 'Go to the app store to select plug-in rich sites >>',
|
||||
'plugins_no_data_tips' => 'There is no relevant application yet',
|
||||
// 表单
|
||||
@ -967,11 +1134,40 @@ return [
|
||||
'form_item_max_price_message' => 'Incorrect maximum price',
|
||||
],
|
||||
|
||||
// 首页轮播
|
||||
'slide' => [
|
||||
'base_nav_title' => 'Slide',
|
||||
// 表单
|
||||
'form_item_name' => 'Name',
|
||||
'form_item_name_message' => 'Name format: 2~60 characters',
|
||||
'form_item_images_url' => 'Slide Pictures',
|
||||
'form_item_images_url_tips' => [
|
||||
'1. Recommended size of PC end: 1920 * 480px',
|
||||
'2. Recommended size of mobile terminal: 1200 * 360px',
|
||||
],
|
||||
],
|
||||
|
||||
// sql控制台
|
||||
'sqlconsole' => [
|
||||
'top_tips' => 'PS: Non-developers should not execute any SQL statements at will, which may cause the entire system database to be deleted.',
|
||||
'form_sql_placeholder' => 'SQL Statement',
|
||||
'form_sql_message' => 'Please fill in the SQL statement to be executed',
|
||||
'form_dev_tips' => 'If you need to execute SQL statements, change the [is_develop] value in the [config/shopxo. php] file to [true] to enable developer mode.',
|
||||
],
|
||||
|
||||
// 应用商店
|
||||
'store' => [
|
||||
'top_tips' => 'ShopXO excellent application list, where the most senior, technically capable and reliable ShopXO developers are gathered to provide a comprehensive escort for your plug-in, style and template customization.',
|
||||
'to_store_name' => 'Go to the app store to select plugins >>',
|
||||
],
|
||||
|
||||
// 公共
|
||||
'common' => [
|
||||
// 公共
|
||||
'admin_browser_title' => 'Background management system',
|
||||
'remove_cache_title' => 'Clear Cache',
|
||||
'user_status_title' => 'User Status',
|
||||
'user_status_message' => 'Please select user status',
|
||||
// 商店绑定
|
||||
'store_check_update_name' => 'Check for update',
|
||||
'store_bind_accounts_name' => 'Bind ShopXO store account',
|
||||
@ -1008,5 +1204,333 @@ return [
|
||||
'4. The shortcut operation will clear the original data and reload the page to restore the original data (only effective after saving the product)',
|
||||
],
|
||||
],
|
||||
|
||||
// 后台权限菜单
|
||||
'admin_power_menu_list' => [
|
||||
'config_index' => [
|
||||
'name' => 'System Setup',
|
||||
'item' => [
|
||||
'config_index' => 'System config',
|
||||
'config_store' => 'Store info',
|
||||
'config_save' => 'Configuration save',
|
||||
'index_storeaccountsbind' => 'App store account binding',
|
||||
'index_inspectupgrade' => 'System update check',
|
||||
'index_inspectupgradeconfirm' => 'System update confirmation',
|
||||
'index_stats' => 'Home page statistics',
|
||||
'index_income' => 'Home page Statistics (income statistics]',
|
||||
]
|
||||
],
|
||||
'site_index' => [
|
||||
'name' => 'Site Config',
|
||||
'item' => [
|
||||
'site_index' => 'Site setup',
|
||||
'site_save' => 'Site setup editing',
|
||||
'site_goodssearch' => 'Site setup and product search',
|
||||
'layout_layoutindexhomesave' => 'Homepage layout admin',
|
||||
'sms_index' => 'SMS setup',
|
||||
'sms_save' => 'SMS setup editing',
|
||||
'email_index' => 'Email setup',
|
||||
'email_save' => 'Email setup / editing',
|
||||
'email_emailtest' => 'Mail sending test',
|
||||
'seo_index' => 'SEO setup',
|
||||
'seo_save' => 'SEO setup editing',
|
||||
'agreement_index' => 'Agreement admin',
|
||||
'agreement_save' => 'Protocol setup editing',
|
||||
]
|
||||
],
|
||||
'power_index' => [
|
||||
'name' => 'Power Control',
|
||||
'item' => [
|
||||
'admin_index' => 'Admin list',
|
||||
'admin_saveinfo' => 'Admin add/edit page',
|
||||
'admin_save' => 'Admin add/edit',
|
||||
'admin_delete' => 'Admin delete',
|
||||
'admin_detail' => 'Admin details',
|
||||
'role_index' => 'Role admin',
|
||||
'role_saveinfo' => 'Role group add/edit page',
|
||||
'role_save' => 'Role group add/edit',
|
||||
'role_delete' => 'Role delete',
|
||||
'role_statusupdate' => 'Role status update',
|
||||
'role_detail' => 'Role details',
|
||||
'power_index' => 'Power divide',
|
||||
'power_save' => 'Power add/edit',
|
||||
'power_delete' => 'Power delete',
|
||||
]
|
||||
],
|
||||
'user_index' => [
|
||||
'name' => 'User Admin',
|
||||
'item' => [
|
||||
'user_index' => 'User list',
|
||||
'user_saveinfo' => 'User edit / add page',
|
||||
'user_save' => 'User add/edit',
|
||||
'user_delete' => 'User delete',
|
||||
'user_detail' => 'User details',
|
||||
'useraddress_index' => 'User address',
|
||||
'useraddress_saveinfo' => 'User address edit page',
|
||||
'useraddress_save' => 'User address editing',
|
||||
'useraddress_delete' => 'User address delete',
|
||||
'useraddress_detail' => 'User address details',
|
||||
]
|
||||
],
|
||||
'goods_index' => [
|
||||
'name' => 'Goods Admin',
|
||||
'item' => [
|
||||
'goods_index' => 'Goods admin',
|
||||
'goods_saveinfo' => 'Goods add/edit page',
|
||||
'goods_save' => 'Item add/edit',
|
||||
'goods_delete' => 'Goods delete',
|
||||
'goods_statusupdate' => 'Goods status update',
|
||||
'goods_basetemplate' => 'Get commodity base template',
|
||||
'goods_detail' => 'Goods details',
|
||||
'goodscategory_index' => 'Goods category',
|
||||
'goodscategory_save' => 'Goods category add/edit',
|
||||
'goodscategory_delete' => 'Goods category delete',
|
||||
'goodsparamstemplate_index' => 'Goods params',
|
||||
'goodsparamstemplate_delete' => 'Delete commodity params',
|
||||
'goodsparamstemplate_statusupdate' => 'Goods params status update',
|
||||
'goodsparamstemplate_saveinfo' => 'Goods params add/edit page',
|
||||
'goodsparamstemplate_save' => 'Goods params add/edit ',
|
||||
'goodsparamstemplate_detail' => 'Goods params details',
|
||||
'goodsspectemplate_index' => 'Goods spec',
|
||||
'goodsspectemplate_delete' => 'Item spec delete',
|
||||
'goodsspectemplate_statusupdate' => 'Goods spec status update',
|
||||
'goodsspectemplate_saveinfo' => 'Goods spec add/edit page',
|
||||
'goodsspectemplate_save' => 'Goods spec add/edit',
|
||||
'goodsspectemplate_detail' => 'Goods spec details',
|
||||
'goodscomments_detail' => 'Goods review details',
|
||||
'goodscomments_index' => 'Goods review',
|
||||
'goodscomments_reply' => 'Goods comment reply',
|
||||
'goodscomments_delete' => 'Goods comment delete',
|
||||
'goodscomments_statusupdate' => 'Goods review status update',
|
||||
'goodscomments_saveinfo' => 'Goods comment add/edit page',
|
||||
'goodscomments_save' => 'Goods comments add/edit',
|
||||
'goodsbrowse_index' => 'Goods browsing',
|
||||
'goodsbrowse_delete' => 'Goods browse delete',
|
||||
'goodsbrowse_detail' => 'Goods browsing details',
|
||||
'goodsfavor_index' => 'Goods favor',
|
||||
'goodsfavor_delete' => 'Delete item favor',
|
||||
'goodsfavor_detail' => 'Collection details',
|
||||
'goodscart_index' => 'Shopping cart',
|
||||
'goodscart_delete' => 'Item Cart Delete',
|
||||
'goodscart_detail' => 'Shopping Cart Details',
|
||||
]
|
||||
],
|
||||
'order_index' => [
|
||||
'name' => 'Order Admin',
|
||||
'item' => [
|
||||
'order_index' => 'Order admin',
|
||||
'order_delete' => 'Order delete',
|
||||
'order_cancel' => 'Order cancellation',
|
||||
'order_delivery' => 'Order delivery',
|
||||
'order_collect' => 'Order receipt',
|
||||
'order_pay' => 'Order payment',
|
||||
'order_confirm' => 'acknowledgement of order',
|
||||
'order_detail' => 'Order details',
|
||||
'orderaftersale_index' => 'Order after sales',
|
||||
'orderaftersale_delete' => 'After sales order delete',
|
||||
'orderaftersale_cancel' => 'Order after-sales cancellation',
|
||||
'orderaftersale_audit' => 'Order after sales review',
|
||||
'orderaftersale_confirm' => 'Order after sales confirmation',
|
||||
'orderaftersale_refuse' => 'After sales rejection of order',
|
||||
'orderaftersale_detail' => 'Order after sales details',
|
||||
]
|
||||
],
|
||||
'navigation_index' => [
|
||||
'name' => 'Website Admin',
|
||||
'item' => [
|
||||
'navigation_index' => 'Navigation admin',
|
||||
'navigation_save' => 'Navigation add/edit',
|
||||
'navigation_delete' => 'Navigation delete',
|
||||
'navigation_statusupdate' => 'Navigation status update',
|
||||
'customview_index' => 'Custom page',
|
||||
'customview_saveinfo' => 'Custom page add/edit page',
|
||||
'customview_save' => 'Custom page add/edit',
|
||||
'customview_delete' => 'Custom page delete',
|
||||
'customview_statusupdate' => 'Custom page status update',
|
||||
'customview_detail' => 'Custom page details',
|
||||
'link_index' => 'Links',
|
||||
'link_saveinfo' => 'Link add/edit page',
|
||||
'link_save' => 'Add / Edit Links',
|
||||
'link_delete' => 'Link delete',
|
||||
'link_statusupdate' => 'Link status update',
|
||||
'link_detail' => 'Link details',
|
||||
'theme_index' => 'Theme admin',
|
||||
'theme_save' => 'Topic admin add/edit',
|
||||
'theme_upload' => 'Theme upload and installation',
|
||||
'theme_delete' => 'Subject delete',
|
||||
'theme_download' => 'Theme download',
|
||||
'slide_index' => 'Home page rotation',
|
||||
'slide_saveinfo' => 'Carousel add/edit page',
|
||||
'slide_save' => 'Carousel add/edit',
|
||||
'slide_statusupdate' => 'Rotation status update',
|
||||
'slide_delete' => 'Rotation delete',
|
||||
'slide_detail' => 'Rotation details',
|
||||
'screeningprice_index' => 'Screening price',
|
||||
'screeningprice_save' => 'Filter price add/edit',
|
||||
'screeningprice_delete' => 'Filter price delete',
|
||||
'region_index' => 'Regional admin',
|
||||
'region_save' => 'Region add/edit',
|
||||
'region_delete' => 'Region delete',
|
||||
'region_codedata' => 'Get area number data',
|
||||
'express_index' => 'Express Management',
|
||||
'express_save' => 'Express add/edit',
|
||||
'express_delete' => 'Express delete',
|
||||
'payment_index' => 'Payment method',
|
||||
'payment_saveinfo' => 'Payment method installation / editing page',
|
||||
'payment_save' => 'Payment method installation / editing',
|
||||
'payment_delete' => 'Payment method delete',
|
||||
'payment_install' => 'Payment method installation',
|
||||
'payment_statusupdate' => 'Payment method status update',
|
||||
'payment_uninstall' => 'Payment method unloading',
|
||||
'payment_upload' => 'Payment method upload',
|
||||
'quicknav_index' => 'Quick navigation',
|
||||
'quicknav_saveinfo' => 'Quick navigation add/edit page',
|
||||
'quicknav_save' => 'Quick navigation add/edit',
|
||||
'quicknav_statusupdate' => 'Quick navigation status update',
|
||||
'quicknav_delete' => 'Quick navigation delete',
|
||||
'quicknav_detail' => 'Quick navigation details',
|
||||
'design_index' => 'Page design',
|
||||
'design_saveinfo' => 'Page design add/edit page',
|
||||
'design_save' => 'Page design add/edit',
|
||||
'design_statusupdate' => 'Page design status update',
|
||||
'design_upload' => 'Page design import',
|
||||
'design_download' => 'Page Design Download',
|
||||
'design_sync' => 'Page design synchronization home page',
|
||||
'design_delete' => 'Page design delete',
|
||||
]
|
||||
],
|
||||
'brand_index' => [
|
||||
'name' => 'Brand Admin',
|
||||
'item' => [
|
||||
'brand_index' => 'Brand admin',
|
||||
'brand_saveinfo' => 'Brand add/edit page',
|
||||
'brand_save' => 'Brand add/edit',
|
||||
'brand_statusupdate' => 'Brand status update',
|
||||
'brand_delete' => 'Brand delete',
|
||||
'brand_detail' => 'Brand details',
|
||||
'brandcategory_index' => 'Brand classification',
|
||||
'brandcategory_save' => 'Brand category add/edit',
|
||||
'brandcategory_delete' => 'Brand classification delete',
|
||||
]
|
||||
],
|
||||
'warehouse_index' => [
|
||||
'name' => 'Warehouse Admin',
|
||||
'item' => [
|
||||
'warehouse_index' => 'Warehouse admin',
|
||||
'warehouse_saveinfo' => 'Warehouse add/edit page',
|
||||
'warehouse_save' => 'Warehouse add/edit',
|
||||
'warehouse_delete' => 'Warehouse delete',
|
||||
'warehouse_statusupdate' => 'Warehouse status update',
|
||||
'warehouse_detail' => 'Warehouse details',
|
||||
'warehousegoods_index' => 'Warehouse commodity admin',
|
||||
'warehousegoods_detail' => 'Warehouse item details',
|
||||
'warehousegoods_delete' => 'Warehouse Item Deletion',
|
||||
'warehousegoods_statusupdate' => 'Warehouse commodity status update',
|
||||
'warehousegoods_goodssearch' => 'Warehouse item search',
|
||||
'warehousegoods_goodsadd' => 'Warehouse item search add',
|
||||
'warehousegoods_goodsdel' => 'Warehouse item search delete',
|
||||
'warehousegoods_inventoryinfo' => 'Warehouse commodity inventory editing page',
|
||||
'warehousegoods_inventorysave' => 'Edit warehouse inventory',
|
||||
]
|
||||
],
|
||||
'app_index' => [
|
||||
'name' => 'Mobile Admin',
|
||||
'item' => [
|
||||
'appconfig_index' => 'Basic config',
|
||||
'appconfig_save' => 'Basic config saving',
|
||||
'apphomenav_index' => 'Home page navigation',
|
||||
'apphomenav_saveinfo' => 'Home navigation add/edit page',
|
||||
'apphomenav_save' => 'Home page navigation add/edit',
|
||||
'apphomenav_statusupdate' => 'Homepage navigation status update',
|
||||
'apphomenav_delete' => 'Home page navigation delete',
|
||||
'apphomenav_detail' => 'Home page navigation details',
|
||||
'appcenternav_index' => 'User center navigation',
|
||||
'appcenternav_saveinfo' => 'User center navigation add/edit page',
|
||||
'appcenternav_save' => 'User center navigation add/edit',
|
||||
'appcenternav_statusupdate' => 'User center navigation status update',
|
||||
'appcenternav_delete' => 'User center navigation delete',
|
||||
'appcenternav_detail' => 'User center navigation details',
|
||||
'appmini_index' => 'Applet list',
|
||||
'appmini_created' => 'Applet package generation',
|
||||
'appmini_delete' => 'Applet package delete',
|
||||
'appmini_themeupload' => 'Applet theme upload',
|
||||
'appmini_themesave' => 'Applet theme switching',
|
||||
'appmini_themedelete' => 'Applet theme switching',
|
||||
'appmini_themedownload' => 'Applet theme download',
|
||||
'appmini_config' => 'Applet config',
|
||||
'appmini_save' => 'Applet config save',
|
||||
]
|
||||
],
|
||||
'article_index' => [
|
||||
'name' => 'Article Admin',
|
||||
'item' => [
|
||||
'article_index' => 'Article admin',
|
||||
'article_saveinfo' => 'Article add/edit page',
|
||||
'article_save' => 'Article add/edit',
|
||||
'article_delete' => 'Article delete',
|
||||
'article_statusupdate' => 'Article status update',
|
||||
'article_detail' => 'Article details',
|
||||
'articlecategory_index' => 'Article classification',
|
||||
'articlecategory_save' => 'Article classification editing / adding',
|
||||
'articlecategory_delete' => 'Article classification delete',
|
||||
]
|
||||
],
|
||||
'data_index' => [
|
||||
'name' => 'data Admin',
|
||||
'item' => [
|
||||
'answer_index' => 'Q&A message',
|
||||
'answer_reply' => 'Q&A message reply',
|
||||
'answer_delete' => 'Q&A message delete',
|
||||
'answer_statusupdate' => 'Update message status',
|
||||
'answer_saveinfo' => 'Q&A add/edit page',
|
||||
'answer_save' => 'Q&A add/edit',
|
||||
'answer_detail' => 'Q&A message details',
|
||||
'message_index' => 'Message admin',
|
||||
'message_delete' => 'Message delete',
|
||||
'message_detail' => 'Message details',
|
||||
'paylog_index' => 'Payment log',
|
||||
'paylog_detail' => 'Payment log details',
|
||||
'paylog_close' => 'Payment log closed',
|
||||
'payrequestlog_index' => 'Payment request log list',
|
||||
'payrequestlog_detail' => 'Payment request log details',
|
||||
'refundlog_index' => 'Refund log',
|
||||
'refundlog_detail' => 'Refund log details',
|
||||
'integrallog_index' => 'Integral log',
|
||||
'integrallog_detail' => 'Points log details',
|
||||
]
|
||||
],
|
||||
'store_index' => [
|
||||
'name' => 'Application Center',
|
||||
'item' => [
|
||||
'pluginsadmin_index' => 'Application admin',
|
||||
'plugins_index' => 'Application call admin',
|
||||
'pluginsadmin_saveinfo' => 'Application add/edit page',
|
||||
'pluginsadmin_save' => 'Apply add/edit',
|
||||
'pluginsadmin_statusupdate' => 'Application status update',
|
||||
'pluginsadmin_delete' => 'Apply delete',
|
||||
'pluginsadmin_upload' => 'Application upload',
|
||||
'pluginsadmin_download' => 'Application packaging',
|
||||
'pluginsadmin_install' => 'Application installation',
|
||||
'pluginsadmin_uninstall' => 'Apps Uninstall',
|
||||
'pluginsadmin_sortsave' => 'Apply sort save',
|
||||
'store_index' => 'App store',
|
||||
'packageinstall_index' => 'Package installation page',
|
||||
'packageinstall_install' => 'Package installation',
|
||||
'packageupgrade_upgrade' => 'Package update',
|
||||
]
|
||||
],
|
||||
'tool_index' => [
|
||||
'name' => 'Tools',
|
||||
'item' => [
|
||||
'cache_index' => 'Cache admin',
|
||||
'cache_statusupdate' => 'Site cache update',
|
||||
'cache_templateupdate' => 'Template cache update',
|
||||
'cache_moduleupdate' => 'Module cache update',
|
||||
'cache_logdelete' => 'Log delete',
|
||||
'sqlconsole_index' => 'SQL console',
|
||||
'sqlconsole_implement' => 'SQL execution',
|
||||
]
|
||||
],
|
||||
],
|
||||
];
|
||||
?>
|
@ -79,6 +79,93 @@ return [
|
||||
],
|
||||
],
|
||||
|
||||
// 用户
|
||||
'user' => [
|
||||
'base_nav_title' => '用户',
|
||||
// 表单
|
||||
'form_item_system_type' => '系统类型',
|
||||
'form_item_system_type_tips' => '默认 default',
|
||||
'form_item_system_type_message' => '系统类型2~60字符',
|
||||
'form_item_username' => '用户名',
|
||||
'form_item_username_message' => '用户名2~30个字符',
|
||||
'form_item_nickname' => '昵称',
|
||||
'form_item_nickname_message' => '昵称最多30个字符',
|
||||
'form_item_mobile' => '手机号码',
|
||||
'form_item_mobile_message' => '手机号码格式错误',
|
||||
'form_item_email' => '电子邮箱',
|
||||
'form_item_email_message' => '电子邮箱格式错误',
|
||||
'form_item_alipay_openid' => '支付宝openid',
|
||||
'form_item_alipay_openid_message' => '请填写支付宝openid',
|
||||
'form_item_baidu_openid' => '百度openid',
|
||||
'form_item_baidu_openid_message' => '请填写百度openid',
|
||||
'form_item_toutiao_openid' => '头条openid',
|
||||
'form_item_toutiao_openid_message' => '请填写头条openid',
|
||||
'form_item_toutiao_unionid' => '头条unionid',
|
||||
'form_item_toutiao_unionid_message' => '请填写头条unionid',
|
||||
'form_item_qq_openid' => 'QQopenid',
|
||||
'form_item_qq_openid_message' => '请填写QQopenid',
|
||||
'form_item_qq_unionid' => 'QQunionid',
|
||||
'form_item_qq_unionid_message' => '请填写QQunionid',
|
||||
'form_item_weixin_openid' => '微信openid',
|
||||
'form_item_weixin_openid_message' => '请填写微信openid',
|
||||
'form_item_weixin_unionid' => '微信unionid',
|
||||
'form_item_weixin_unionid_message' => '请填写微信unionid',
|
||||
'form_item_web_weixin_openid' => '微信webopenid',
|
||||
'form_item_web_weixin_openid_message' => '请填写微信webopenid',
|
||||
'form_item_kuaishou_openid' => '快手openid',
|
||||
'form_item_kuaishou_openid_message' => '请填写快手openid',
|
||||
'form_item_province' => '所在省',
|
||||
'form_item_province_message' => '所在省最多60个字符',
|
||||
'form_item_city' => '所在市',
|
||||
'form_item_city_message' => '所在市最多60个字符',
|
||||
'form_item_county' => '所在区/县',
|
||||
'form_item_county_message' => '所在区/县最多60个字符',
|
||||
'form_item_address' => '详细地址',
|
||||
'form_item_address_message' => '地址格式最多80个字符',
|
||||
'form_item_integral' => '有效积分',
|
||||
'form_item_integral_message' => '请输入有效积分',
|
||||
'form_item_locking_integral' => '锁定积分',
|
||||
'form_item_locking_integral_message' => '请输入锁定积分',
|
||||
'form_item_birthday' => '生日',
|
||||
'form_item_birthday_message' => '生日格式有误',
|
||||
'form_item_referrer' => '邀请用户ID',
|
||||
'form_item_referrer_message' => '请输入邀请用户ID',
|
||||
'form_item_pwd' => '登录密码',
|
||||
'form_item_pwd_tips' => '输入则修改密码',
|
||||
'form_item_pwd_message' => '登录密码格式6~18个字符之间',
|
||||
],
|
||||
|
||||
// 用户地址
|
||||
'useraddress' => [
|
||||
'base_nav_title' => '用户地址',
|
||||
// 表单
|
||||
'form_item_user_id' => '用户id',
|
||||
'form_item_user_id_message' => '请填写用户id',
|
||||
'form_item_name' => '姓名',
|
||||
'form_item_name_message' => '姓名格式2~16个字符之间',
|
||||
'form_item_alias' => '别名',
|
||||
'form_item_alias_message' => '别名格式最多16个字符',
|
||||
'form_item_tel' => '电话',
|
||||
'form_item_tel_message' => '电话格式有误',
|
||||
'form_item_address' => '详细地址',
|
||||
'form_item_address_message' => '详细地址格式1~80个字符之间',
|
||||
'form_item_idcard_name' => '身份证姓名',
|
||||
'form_item_idcard_name_tips' => '选填,请务必与上传的身份证件姓名保持一致',
|
||||
'form_item_idcard_name_message' => '身份证姓名格式最多16个字符',
|
||||
'form_item_idcard_number' => '身份证号码',
|
||||
'form_item_idcard_number_tips' => '选填,请务必与上传的身份证件号码保持一致',
|
||||
'form_item_idcard_number_message' => '身份证号码格式最多18个字符',
|
||||
'form_item_idcard_images' => '身份证照片',
|
||||
'form_item_idcard_images_tips' => '选传,请使用身份证原件拍摄,图片要清晰',
|
||||
'form_item_idcard_front_button_name' => '上传人像面图片',
|
||||
'form_item_idcard_back_button_name' => '上传国微面图片',
|
||||
'form_item_idcard_no_user_tips' => '先关联用户后再上传身份证图片',
|
||||
// 详情
|
||||
'detail_user_address_idcard_name' => '姓名',
|
||||
'detail_user_address_idcard_number' => '号码',
|
||||
'detail_user_address_idcard_pic' => '照片',
|
||||
],
|
||||
|
||||
// 站点设置
|
||||
'site' => [
|
||||
// 页面公共
|
||||
@ -303,12 +390,45 @@ return [
|
||||
'form_is_reply' => '是否已回复',
|
||||
],
|
||||
|
||||
// 仓库管理
|
||||
'warehouse' => [
|
||||
'base_nav_title' => '仓库',
|
||||
'top_tips_list' => [
|
||||
'1. 权重数值越大代表权重越高、扣除库存按照权重依次扣除)',
|
||||
'2. 仓库仅软删除、删除后将不可用、仅数据库中保留数据)可以自行删除关联的商品数据',
|
||||
'3. 仓库停用和删除、关联的商品库存会立即释放',
|
||||
],
|
||||
// 表单
|
||||
'form_item_name' => '姓名',
|
||||
'form_item_name_message' => '姓名格式2~30个字符之间',
|
||||
'form_item_alias' => '别名',
|
||||
'form_item_alias_message' => '别名格式最多16个字符',
|
||||
'form_item_level' => '权重',
|
||||
'form_item_level_tips' => '权重数值越大代表权重越高',
|
||||
'form_item_level_message' => '请输入有效权重数值',
|
||||
'form_item_contacts_name' => '联系人',
|
||||
'form_item_contacts_name_message' => '联系人格式2~16个字符之间',
|
||||
'form_item_contacts_tel' => '联系电话',
|
||||
'form_item_contacts_tel_message' => '请填写联系电话',
|
||||
'form_item_address' => '详细地址',
|
||||
'form_item_address_message' => '地址格式1~80个字符之间',
|
||||
],
|
||||
|
||||
// 仓库商品
|
||||
'warehousegoods' => [
|
||||
// 页面公共
|
||||
'page_common' => [
|
||||
'warehouse_choice_tips' => '请选择仓库',
|
||||
],
|
||||
// 基础
|
||||
'no_spec_data_tips' => '无规格数据',
|
||||
'batch_setup_inventory_placeholder' => '批量设置的值',
|
||||
'base_spec_inventory_title' => '规格库存',
|
||||
// 表单
|
||||
'add_goods_title' => '商品添加',
|
||||
'form_item_warehouseg_placeholder' => '仓库...',
|
||||
'form_item_warehouseg_message' => '请选择仓库',
|
||||
'form_item_inventory_message' => '库存数量0~100000000',
|
||||
],
|
||||
|
||||
// 管理员
|
||||
@ -348,6 +468,19 @@ return [
|
||||
'form_item_password_edit_tips' => '输入则修改密码',
|
||||
'form_item_status' => '状态',
|
||||
'form_item_status_message' => '请选择用户状态',
|
||||
// 动态表格
|
||||
'form_table' => [
|
||||
'username' => '管理员',
|
||||
'status' => '状态',
|
||||
'gender' => '性别',
|
||||
'mobile' => '手机',
|
||||
'email' => '邮箱',
|
||||
'role_name' => '角色组',
|
||||
'login_total' => '登录次数',
|
||||
'login_time' => '最后登录时间',
|
||||
'add_time' => '创建时间',
|
||||
'upd_time' => '更新时间',
|
||||
],
|
||||
],
|
||||
|
||||
// 协议
|
||||
@ -362,6 +495,15 @@ return [
|
||||
'view_detail_name' => '查看详情',
|
||||
],
|
||||
|
||||
// 手机配置
|
||||
'appconfig' => [
|
||||
// 基础导航
|
||||
'base_nav_list' => [
|
||||
['name' => '基础配置', 'type' => 'index'],
|
||||
['name' => 'APP/小程序', 'type' => 'app'],
|
||||
],
|
||||
],
|
||||
|
||||
// 小程序管理
|
||||
'appmini' => [
|
||||
// 基础导航
|
||||
@ -381,6 +523,19 @@ return [
|
||||
'package_generate_tips' => '生成时间比较长,请不要关闭浏览器窗口!',
|
||||
],
|
||||
|
||||
// 短信设置
|
||||
'sms' => [
|
||||
// 基础导航
|
||||
'base_nav_list' => [
|
||||
['name' => '短信设置', 'type' => 'index'],
|
||||
['name' => '消息模板', 'type' => 'message'],
|
||||
],
|
||||
'top_tips' => '阿里云短信管理地址',
|
||||
'top_to_aliyun_tips' => '点击去阿里云购买短信',
|
||||
'base_item_admin_title' => '后台',
|
||||
'base_item_index_title' => '前端',
|
||||
],
|
||||
|
||||
// 邮箱设置
|
||||
'email' => [
|
||||
// 基础导航
|
||||
@ -684,7 +839,7 @@ return [
|
||||
'detail_user_address_value' => '详细地址',
|
||||
'detail_user_address_idcard' => '身份证信息',
|
||||
'detail_user_address_idcard_name' => '姓名',
|
||||
'detail_user_address_idcard_number' => '姓名',
|
||||
'detail_user_address_idcard_number' => '号码',
|
||||
'detail_user_address_idcard_pic' => '照片',
|
||||
'detail_take_address_title' => '取货地址',
|
||||
'detail_take_address_contact' => '联系信息',
|
||||
@ -766,6 +921,18 @@ return [
|
||||
'form_item_website_url_message' => '官网地址格式有误',
|
||||
],
|
||||
|
||||
// 主题管理
|
||||
'theme' => [
|
||||
'base_nav_list' => [
|
||||
['name' => '当前主题', 'type' => 'index'],
|
||||
['name' => '主题安装', 'type' => 'upload'],
|
||||
],
|
||||
'nav_store_theme_name' => '更多主题下载',
|
||||
'list_author_title' => '作者:',
|
||||
'list_version_title' => '适用版本:',
|
||||
'form_item_upload_tips' => '上传一个zip压缩格式的应用安装包',
|
||||
],
|
||||
|
||||
// 用户中心导航
|
||||
'appcenternav' => [
|
||||
'base_nav_title' => '手机用户中心导航',
|
||||
@ -821,9 +988,9 @@ return [
|
||||
'base_top_tips_one' => '列表排序方式[ 自定义排序 -> 最早安装 ]',
|
||||
'base_top_tips_two' => '可点击拖动图标按钮调整插件调用和展示顺序',
|
||||
'base_open_sort_title' => '开启排序',
|
||||
'data_list_author_title' => '作者',
|
||||
'data_list_author_url_title' => '主页',
|
||||
'data_list_version_title' => '版本',
|
||||
'data_list_author_title' => '作者:',
|
||||
'data_list_author_url_title' => '主页:',
|
||||
'data_list_version_title' => '版本:',
|
||||
'uninstall_confirm_tips' => '卸载可能会丢失插件基础配置数据不可恢复、确认操作吗?',
|
||||
'not_install_divide_title' => '以下插件未安装',
|
||||
'delete_plugins_text' => '1. 仅删除应用',
|
||||
@ -967,6 +1134,33 @@ return [
|
||||
'form_item_max_price_message' => '最大价格有误',
|
||||
],
|
||||
|
||||
// 首页轮播
|
||||
'slide' => [
|
||||
'base_nav_title' => '轮播',
|
||||
// 表单
|
||||
'form_item_name' => '名称',
|
||||
'form_item_name_message' => '名称格式2~60个字符',
|
||||
'form_item_images_url' => '轮播图片',
|
||||
'form_item_images_url_tips' => [
|
||||
'1. PC端建议尺寸:1920*480px',
|
||||
'2. 手机端建议尺寸:1200*360px',
|
||||
],
|
||||
],
|
||||
|
||||
// sql控制台
|
||||
'sqlconsole' => [
|
||||
'top_tips' => 'PS:非开发人员请不要随意执行任何SQL语句,操作可能导致将整个系统数据库被删除。',
|
||||
'form_sql_placeholder' => 'SQL语句',
|
||||
'form_sql_message' => '请填写需要执行的SQL语句',
|
||||
'form_dev_tips' => '如需要执行SQL 语句,请在[ config/shopxo.php ]文件中[ is_develop ]值改为[ true ]开启开发者模式。',
|
||||
],
|
||||
|
||||
// 应用商店
|
||||
'store' => [
|
||||
'top_tips' => 'ShopXO优秀应用列表,这里云集了最资深,技术能力最强,最可信赖的ShopXO开发者,为您的插件、风格、模板定制全面护航。',
|
||||
'to_store_name' => '去应用商店挑选插件 >>',
|
||||
],
|
||||
|
||||
// 公共
|
||||
'common' => [
|
||||
// 公共
|
||||
@ -1010,5 +1204,333 @@ return [
|
||||
'4. 快捷操作将会清除原来的数据、重载页面便可恢复原来的数据(仅保存商品后生效)',
|
||||
],
|
||||
],
|
||||
|
||||
// 后台权限菜单
|
||||
'admin_power_menu_list' => [
|
||||
'config_index' => [
|
||||
'name' => '系统设置',
|
||||
'item' => [
|
||||
'config_index' => '系统配置',
|
||||
'config_store' => '商店信息',
|
||||
'config_save' => '配置保存',
|
||||
'index_storeaccountsbind' => '应用商店帐号绑定',
|
||||
'index_inspectupgrade' => '系统更新检查',
|
||||
'index_inspectupgradeconfirm' => '系统更新确认',
|
||||
'index_stats' => '首页统计数据',
|
||||
'index_income' => '首页统计数据(收入统计)',
|
||||
]
|
||||
],
|
||||
'site_index' => [
|
||||
'name' => '站点配置',
|
||||
'item' => [
|
||||
'site_index' => '站点设置',
|
||||
'site_save' => '站点设置编辑',
|
||||
'site_goodssearch' => '站点设置商品搜索',
|
||||
'layout_layoutindexhomesave' => '首页布局管理',
|
||||
'sms_index' => '短信设置',
|
||||
'sms_save' => '短信设置编辑',
|
||||
'email_index' => '邮箱设置',
|
||||
'email_save' => '邮箱设置/编辑',
|
||||
'email_emailtest' => '邮件发送测试',
|
||||
'seo_index' => 'SEO设置',
|
||||
'seo_save' => 'SEO设置编辑',
|
||||
'agreement_index' => '协议管理',
|
||||
'agreement_save' => '协议设置编辑',
|
||||
]
|
||||
],
|
||||
'power_index' => [
|
||||
'name' => '权限控制',
|
||||
'item' => [
|
||||
'admin_index' => '管理员列表',
|
||||
'admin_saveinfo' => '管理员添加/编辑页面',
|
||||
'admin_save' => '管理员添加/编辑',
|
||||
'admin_delete' => '管理员删除',
|
||||
'admin_detail' => '管理员详情',
|
||||
'role_index' => '角色管理',
|
||||
'role_saveinfo' => '角色组添加/编辑页面',
|
||||
'role_save' => '角色组添加/编辑',
|
||||
'role_delete' => '角色删除',
|
||||
'role_statusupdate' => '角色状态更新',
|
||||
'role_detail' => '角色详情',
|
||||
'power_index' => '权限分配',
|
||||
'power_save' => '权限添加/编辑',
|
||||
'power_delete' => '权限删除',
|
||||
]
|
||||
],
|
||||
'user_index' => [
|
||||
'name' => '用户管理',
|
||||
'item' => [
|
||||
'user_index' => '用户列表',
|
||||
'user_saveinfo' => '用户编辑/添加页面',
|
||||
'user_save' => '用户添加/编辑',
|
||||
'user_delete' => '用户删除',
|
||||
'user_detail' => '用户详情',
|
||||
'useraddress_index' => '用户地址',
|
||||
'useraddress_saveinfo' => '用户地址编辑页面',
|
||||
'useraddress_save' => '用户地址编辑',
|
||||
'useraddress_delete' => '用户地址删除',
|
||||
'useraddress_detail' => '用户地址详情',
|
||||
]
|
||||
],
|
||||
'goods_index' => [
|
||||
'name' => '商品管理',
|
||||
'item' => [
|
||||
'goods_index' => '商品管理',
|
||||
'goods_saveinfo' => '商品添加/编辑页面',
|
||||
'goods_save' => '商品添加/编辑',
|
||||
'goods_delete' => '商品删除',
|
||||
'goods_statusupdate' => '商品状态更新',
|
||||
'goods_basetemplate' => '获取商品基础模板',
|
||||
'goods_detail' => '商品详情',
|
||||
'goodscategory_index' => '商品分类',
|
||||
'goodscategory_save' => '商品分类添加/编辑',
|
||||
'goodscategory_delete' => '商品分类删除',
|
||||
'goodsparamstemplate_index' => '商品参数',
|
||||
'goodsparamstemplate_delete' => '商品参数删除',
|
||||
'goodsparamstemplate_statusupdate' => '商品参数状态更新',
|
||||
'goodsparamstemplate_saveinfo' => '商品参数添加/编辑页面',
|
||||
'goodsparamstemplate_save' => '商品参数添加/编辑',
|
||||
'goodsparamstemplate_detail' => '商品参数详情',
|
||||
'goodsspectemplate_index' => '商品规格',
|
||||
'goodsspectemplate_delete' => '商品规格删除',
|
||||
'goodsspectemplate_statusupdate' => '商品规格状态更新',
|
||||
'goodsspectemplate_saveinfo' => '商品规格添加/编辑页面',
|
||||
'goodsspectemplate_save' => '商品规格添加/编辑',
|
||||
'goodsspectemplate_detail' => '商品规格详情',
|
||||
'goodscomments_detail' => '商品评论详情',
|
||||
'goodscomments_index' => '商品评论',
|
||||
'goodscomments_reply' => '商品评论回复',
|
||||
'goodscomments_delete' => '商品评论删除',
|
||||
'goodscomments_statusupdate' => '商品评论状态更新',
|
||||
'goodscomments_saveinfo' => '商品评论添加/编辑页面',
|
||||
'goodscomments_save' => '商品评论添加/编辑',
|
||||
'goodsbrowse_index' => '商品浏览',
|
||||
'goodsbrowse_delete' => '商品浏览删除',
|
||||
'goodsbrowse_detail' => '商品浏览详情',
|
||||
'goodsfavor_index' => '商品收藏',
|
||||
'goodsfavor_delete' => '商品收藏删除',
|
||||
'goodsfavor_detail' => '商品收藏详情',
|
||||
'goodscart_index' => '商品购物车',
|
||||
'goodscart_delete' => '商品购物车删除',
|
||||
'goodscart_detail' => '商品购物车详情',
|
||||
]
|
||||
],
|
||||
'order_index' => [
|
||||
'name' => '订单管理',
|
||||
'item' => [
|
||||
'order_index' => '订单管理',
|
||||
'order_delete' => '订单删除',
|
||||
'order_cancel' => '订单取消',
|
||||
'order_delivery' => '订单发货',
|
||||
'order_collect' => '订单收货',
|
||||
'order_pay' => '订单支付',
|
||||
'order_confirm' => '订单确认',
|
||||
'order_detail' => '订单详情',
|
||||
'orderaftersale_index' => '订单售后',
|
||||
'orderaftersale_delete' => '订单售后删除',
|
||||
'orderaftersale_cancel' => '订单售后取消',
|
||||
'orderaftersale_audit' => '订单售后审核',
|
||||
'orderaftersale_confirm' => '订单售后确认',
|
||||
'orderaftersale_refuse' => '订单售后拒绝',
|
||||
'orderaftersale_detail' => '订单售后详情',
|
||||
]
|
||||
],
|
||||
'navigation_index' => [
|
||||
'name' => '网站管理',
|
||||
'item' => [
|
||||
'navigation_index' => '导航管理',
|
||||
'navigation_save' => '导航添加/编辑',
|
||||
'navigation_delete' => '导航删除',
|
||||
'navigation_statusupdate' => '导航状态更新',
|
||||
'customview_index' => '自定义页面',
|
||||
'customview_saveinfo' => '自定义页面添加/编辑页面',
|
||||
'customview_save' => '自定义页面添加/编辑',
|
||||
'customview_delete' => '自定义页面删除',
|
||||
'customview_statusupdate' => '自定义页面状态更新',
|
||||
'customview_detail' => '自定义页面详情',
|
||||
'link_index' => '友情链接',
|
||||
'link_saveinfo' => '友情链接添加/编辑页面',
|
||||
'link_save' => '友情链接添加/编辑',
|
||||
'link_delete' => '友情链接删除',
|
||||
'link_statusupdate' => '友情链接状态更新',
|
||||
'link_detail' => '友情链接详情',
|
||||
'theme_index' => '主题管理',
|
||||
'theme_save' => '主题管理添加/编辑',
|
||||
'theme_upload' => '主题上传安装',
|
||||
'theme_delete' => '主题删除',
|
||||
'theme_download' => '主题下载',
|
||||
'slide_index' => '首页轮播',
|
||||
'slide_saveinfo' => '轮播添加/编辑页面',
|
||||
'slide_save' => '轮播添加/编辑',
|
||||
'slide_statusupdate' => '轮播状态更新',
|
||||
'slide_delete' => '轮播删除',
|
||||
'slide_detail' => '轮播详情',
|
||||
'screeningprice_index' => '筛选价格',
|
||||
'screeningprice_save' => '筛选价格添加/编辑',
|
||||
'screeningprice_delete' => '筛选价格删除',
|
||||
'region_index' => '地区管理',
|
||||
'region_save' => '地区添加/编辑',
|
||||
'region_delete' => '地区删除',
|
||||
'region_codedata' => '获取地区编号数据',
|
||||
'express_index' => '快递管理',
|
||||
'express_save' => '快递添加/编辑',
|
||||
'express_delete' => '快递删除',
|
||||
'payment_index' => '支付方式',
|
||||
'payment_saveinfo' => '支付方式安装/编辑页面',
|
||||
'payment_save' => '支付方式安装/编辑',
|
||||
'payment_delete' => '支付方式删除',
|
||||
'payment_install' => '支付方式安装',
|
||||
'payment_statusupdate' => '支付方式状态更新',
|
||||
'payment_uninstall' => '支付方式卸载',
|
||||
'payment_upload' => '支付方式上传',
|
||||
'quicknav_index' => '快捷导航',
|
||||
'quicknav_saveinfo' => '快捷导航添加/编辑页面',
|
||||
'quicknav_save' => '快捷导航添加/编辑',
|
||||
'quicknav_statusupdate' => '快捷导航状态更新',
|
||||
'quicknav_delete' => '快捷导航删除',
|
||||
'quicknav_detail' => '快捷导航详情',
|
||||
'design_index' => '页面设计',
|
||||
'design_saveinfo' => '页面设计添加/编辑页面',
|
||||
'design_save' => '页面设计添加/编辑',
|
||||
'design_statusupdate' => '页面设计状态更新',
|
||||
'design_upload' => '页面设计导入',
|
||||
'design_download' => '页面设计下载',
|
||||
'design_sync' => '页面设计同步首页',
|
||||
'design_delete' => '页面设计删除',
|
||||
]
|
||||
],
|
||||
'brand_index' => [
|
||||
'name' => '品牌管理',
|
||||
'item' => [
|
||||
'brand_index' => '品牌管理',
|
||||
'brand_saveinfo' => '品牌添加/编辑页面',
|
||||
'brand_save' => '品牌添加/编辑',
|
||||
'brand_statusupdate' => '品牌状态更新',
|
||||
'brand_delete' => '品牌删除',
|
||||
'brand_detail' => '品牌详情',
|
||||
'brandcategory_index' => '品牌分类',
|
||||
'brandcategory_save' => '品牌分类添加/编辑',
|
||||
'brandcategory_delete' => '品牌分类删除',
|
||||
]
|
||||
],
|
||||
'warehouse_index' => [
|
||||
'name' => '仓库管理',
|
||||
'item' => [
|
||||
'warehouse_index' => '仓库管理',
|
||||
'warehouse_saveinfo' => '仓库添加/编辑页面',
|
||||
'warehouse_save' => '仓库添加/编辑',
|
||||
'warehouse_delete' => '仓库删除',
|
||||
'warehouse_statusupdate' => '仓库状态更新',
|
||||
'warehouse_detail' => '仓库详情',
|
||||
'warehousegoods_index' => '仓库商品管理',
|
||||
'warehousegoods_detail' => '仓库商品详情',
|
||||
'warehousegoods_delete' => '仓库商品删除',
|
||||
'warehousegoods_statusupdate' => '仓库商品状态更新',
|
||||
'warehousegoods_goodssearch' => '仓库商品搜索',
|
||||
'warehousegoods_goodsadd' => '仓库商品搜索添加',
|
||||
'warehousegoods_goodsdel' => '仓库商品搜索删除',
|
||||
'warehousegoods_inventoryinfo' => '仓库商品库存编辑页面',
|
||||
'warehousegoods_inventorysave' => '仓库商品库存编辑',
|
||||
]
|
||||
],
|
||||
'app_index' => [
|
||||
'name' => '手机管理',
|
||||
'item' => [
|
||||
'appconfig_index' => '基础配置',
|
||||
'appconfig_save' => '基础配置保存',
|
||||
'apphomenav_index' => '首页导航',
|
||||
'apphomenav_saveinfo' => '首页导航添加/编辑页面',
|
||||
'apphomenav_save' => '首页导航添加/编辑',
|
||||
'apphomenav_statusupdate' => '首页导航状态更新',
|
||||
'apphomenav_delete' => '首页导航删除',
|
||||
'apphomenav_detail' => '首页导航详情',
|
||||
'appcenternav_index' => '用户中心导航',
|
||||
'appcenternav_saveinfo' => '用户中心导航添加/编辑页面',
|
||||
'appcenternav_save' => '用户中心导航添加/编辑',
|
||||
'appcenternav_statusupdate' => '用户中心导航状态更新',
|
||||
'appcenternav_delete' => '用户中心导航删除',
|
||||
'appcenternav_detail' => '用户中心导航详情',
|
||||
'appmini_index' => '小程序列表',
|
||||
'appmini_created' => '小程序包生成',
|
||||
'appmini_delete' => '小程序包删除',
|
||||
'appmini_themeupload' => '小程序主题上传',
|
||||
'appmini_themesave' => '小程序主题切换',
|
||||
'appmini_themedelete' => '小程序主题切换',
|
||||
'appmini_themedownload' => '小程序主题下载',
|
||||
'appmini_config' => '小程序配置',
|
||||
'appmini_save' => '小程序配置保存',
|
||||
]
|
||||
],
|
||||
'article_index' => [
|
||||
'name' => '文章管理',
|
||||
'item' => [
|
||||
'article_index' => '文章管理',
|
||||
'article_saveinfo' => '文章添加/编辑页面',
|
||||
'article_save' => '文章添加/编辑',
|
||||
'article_delete' => '文章删除',
|
||||
'article_statusupdate' => '文章状态更新',
|
||||
'article_detail' => '文章详情',
|
||||
'articlecategory_index' => '文章分类',
|
||||
'articlecategory_save' => '文章分类编辑/添加',
|
||||
'articlecategory_delete' => '文章分类删除',
|
||||
]
|
||||
],
|
||||
'data_index' => [
|
||||
'name' => '数据管理',
|
||||
'item' => [
|
||||
'answer_index' => '问答留言',
|
||||
'answer_reply' => '问答留言回复',
|
||||
'answer_delete' => '问答留言删除',
|
||||
'answer_statusupdate' => '问答留言状态更新',
|
||||
'answer_saveinfo' => '问答添加/编辑页面',
|
||||
'answer_save' => '问答添加/编辑',
|
||||
'answer_detail' => '问答留言详情',
|
||||
'message_index' => '消息管理',
|
||||
'message_delete' => '消息删除',
|
||||
'message_detail' => '消息详情',
|
||||
'paylog_index' => '支付日志',
|
||||
'paylog_detail' => '支付日志详情',
|
||||
'paylog_close' => '支付日志关闭',
|
||||
'payrequestlog_index' => '支付请求日志列表',
|
||||
'payrequestlog_detail' => '支付请求日志详情',
|
||||
'refundlog_index' => '退款日志',
|
||||
'refundlog_detail' => '退款日志详情',
|
||||
'integrallog_index' => '积分日志',
|
||||
'integrallog_detail' => '积分日志详情',
|
||||
]
|
||||
],
|
||||
'store_index' => [
|
||||
'name' => '应用中心',
|
||||
'item' => [
|
||||
'pluginsadmin_index' => '应用管理',
|
||||
'plugins_index' => '应用调用管理',
|
||||
'pluginsadmin_saveinfo' => '应用添加/编辑页面',
|
||||
'pluginsadmin_save' => '应用添加/编辑',
|
||||
'pluginsadmin_statusupdate' => '应用状态更新',
|
||||
'pluginsadmin_delete' => '应用删除',
|
||||
'pluginsadmin_upload' => '应用上传',
|
||||
'pluginsadmin_download' => '应用打包',
|
||||
'pluginsadmin_install' => '应用安装',
|
||||
'pluginsadmin_uninstall' => '应用卸载',
|
||||
'pluginsadmin_sortsave' => '应用排序保存',
|
||||
'store_index' => '应用商店',
|
||||
'packageinstall_index' => '软件包安装页面',
|
||||
'packageinstall_install' => '软件包安装',
|
||||
'packageupgrade_upgrade' => '软件包更新',
|
||||
]
|
||||
],
|
||||
'tool_index' => [
|
||||
'name' => '工具',
|
||||
'item' => [
|
||||
'cache_index' => '缓存管理',
|
||||
'cache_statusupdate' => '站点缓存更新',
|
||||
'cache_templateupdate' => '模板缓存更新',
|
||||
'cache_moduleupdate' => '模块缓存更新',
|
||||
'cache_logdelete' => '日志删除',
|
||||
'sqlconsole_index' => 'SQL控制台',
|
||||
'sqlconsole_implement' => 'SQL执行',
|
||||
]
|
||||
],
|
||||
],
|
||||
];
|
||||
?>
|
@ -1,20 +1,19 @@
|
||||
<!-- 继承公共的 form -->
|
||||
{{extend name="public/module/form" /}}
|
||||
|
||||
<!-- 公共导航容器 -->
|
||||
{{block name="form_navigation"}}
|
||||
{{if isset($admin) and isset($admin['id']) and $admin['id'] eq 1 and is_array(MyLang('admin.top_tips_list'))}}
|
||||
<!-- 仅超级管理员显示的温馨提示 -->
|
||||
<div class="am-alert am-alert-danger" data-am-alert>
|
||||
<button type="button" class="am-close">×</button>
|
||||
<p>{{:implode('</p><p>', MyLang('admin.top_tips_list'))}}</p>
|
||||
</div>
|
||||
{{/if}}
|
||||
{{/block}}
|
||||
|
||||
<!-- 表单顶部操作栏 -->
|
||||
{{block name="form_operate_top"}}
|
||||
<a href="{{:MyUrl('admin/admin/saveinfo')}}" class="am-btn am-btn-secondary am-radius am-btn-xs am-icon-plus"> {{:MyLang('add_title')}}</a>
|
||||
<!-- 父级内容 -->
|
||||
{__block__}
|
||||
{{/block}}
|
||||
|
||||
<!-- 底部提示信息 -->
|
||||
{{block name="form_operate_bottom"}}
|
||||
{{if isset($admin) and isset($admin['id']) and $admin['id'] eq 1 and is_array(MyLang('admin.top_tips_list'))}}
|
||||
<!-- 仅超级管理员显示的温馨提示 -->
|
||||
<div class="am-alert am-alert-danger">
|
||||
<p>{{:implode('</p><p>', MyLang('admin.top_tips_list'))}}</p>
|
||||
</div>
|
||||
{{/if}}
|
||||
{{/block}}
|
@ -101,7 +101,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<!-- right content end -->
|
||||
|
||||
|
||||
<!-- footer start -->
|
||||
{{include file="public/footer" /}}
|
||||
<!-- footer end -->
|
@ -1,5 +1,5 @@
|
||||
<ul class="am-nav am-nav-pills table-nav second-nav">
|
||||
{{if !empty($nav_data)}}
|
||||
{{if !empty($nav_data) and is_array($nav_data)}}
|
||||
{{foreach $nav_data as $v}}
|
||||
<li {{if $nav_type eq $v['type']}}class="am-active"{{/if}} data-type="{{$v.type}}">
|
||||
<a href="{{:MyUrl('admin/agreement/index', ['nav_type'=>$v['type']])}}">{{$v.name}}</a>
|
||||
|
@ -4,59 +4,84 @@
|
||||
<div class="content-right">
|
||||
<div class="content">
|
||||
<!-- form start -->
|
||||
<form class="am-form form-validation" action="{{:MyUrl('admin/appcenternav/save')}}" method="POST" request-type="ajax-url" request-value="{{:MyUrl('admin/appcenternav/index', $params)}}" enctype="multipart/form-data">
|
||||
<form class="am-form form-validation am-form-pure am-form-full-screen am-form-popup-fixed" action="{{:MyUrl('admin/appcenternav/save')}}" method="POST" request-type="ajax-url" request-value="{{:MyUrl('admin/appcenternav/index', $params)}}" enctype="multipart/form-data">
|
||||
<legend>
|
||||
<span class="am-text-default">{{:MyLang('appcenternav.base_nav_title')}}{{if empty($data['id'])}}{{:MyLang('created_title')}}{{else /}}{{:MyLang('edit_title')}}{{/if}}</span>
|
||||
<a href="{{:MyUrl('admin/appcenternav/index', $params)}}" class="am-fr am-text-sm am-margin-top-sm am-icon-mail-reply"> {{:MyLang('retreat_title')}}</a>
|
||||
</legend>
|
||||
<div class="am-form-group">
|
||||
<label>{{:MyLang('appcenternav.form_item_name')}}<span class="am-form-group-label-tips-must">*</span></label>
|
||||
<input type="text" name="name" placeholder="{{:MyLang('appcenternav.form_item_name_message')}}" minlength="2" maxlength="60" data-validation-message="{{:MyLang('appcenternav.form_item_name_message')}}" class="am-radius" {{if !empty($data['name'])}} value="{{$data.name}}"{{/if}} required />
|
||||
</div>
|
||||
|
||||
<div class="am-form-group">
|
||||
<label>{{:MyLang('form_platform_title')}}<span class="am-form-group-label-tips-must">*</span></label>
|
||||
<select name="platform" class="am-radius chosen-select" data-placeholder="{{:MyLang('optional_tips')}}" data-validation-message="{{:MyLang('form_platform_message')}}" required>
|
||||
<option value="">{{:MyLang('optional_tips')}}</option>
|
||||
{{foreach $common_platform_type as $v}}
|
||||
<option value="{{$v.value}}" {{if isset($data['platform']) and $data['platform'] eq $v['value']}}selected{{else /}}{{if !isset($data['platform']) and isset($v['checked']) and $v['checked'] eq true}}selected{{/if}}{{/if}}>{{$v.name}}</option>
|
||||
{{/foreach}}
|
||||
</select>
|
||||
</div>
|
||||
<div class="am-cf">
|
||||
<div class="am-u-sm-6 am-padding-horizontal-0">
|
||||
<div class="am-form-group">
|
||||
<label>{{:MyLang('appcenternav.form_item_name')}}<span class="am-form-group-label-tips-must">*</span></label>
|
||||
<input type="text" name="name" placeholder="{{:MyLang('appcenternav.form_item_name_message')}}" minlength="2" maxlength="60" data-validation-message="{{:MyLang('appcenternav.form_item_name_message')}}" class="am-radius" {{if !empty($data['name'])}} value="{{$data.name}}"{{/if}} required />
|
||||
</div>
|
||||
</div>
|
||||
<div class="am-u-sm-6 am-padding-horizontal-0">
|
||||
<div class="am-form-group">
|
||||
<label>{{:MyLang('form_platform_title')}}<span class="am-form-group-label-tips-must">*</span></label>
|
||||
<select name="platform" class="am-radius chosen-select" data-placeholder="{{:MyLang('optional_tips')}}" data-validation-message="{{:MyLang('form_platform_message')}}" required>
|
||||
<option value="">{{:MyLang('optional_tips')}}</option>
|
||||
{{foreach $common_platform_type as $v}}
|
||||
<option value="{{$v.value}}" {{if isset($data['platform']) and $data['platform'] eq $v['value']}}selected{{else /}}{{if !isset($data['platform']) and isset($v['checked']) and $v['checked'] eq true}}selected{{/if}}{{/if}}>{{$v.name}}</option>
|
||||
{{/foreach}}
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="am-form-group">
|
||||
<label>{{:MyLang('form_event_type_title')}}</label>
|
||||
<select name="event_type" class="am-radius chosen-select" data-placeholder="{{:MyLang('optional_tips')}}" data-validation-message="{{:MyLang('form_event_type_message')}}">
|
||||
<option value="">{{:MyLang('optional_tips')}}</option>
|
||||
{{foreach $common_app_event_type as $v}}
|
||||
<option value="{{$v.value}}" {{if isset($data['event_type']) and $data['event_type'] eq $v['value']}}selected{{else /}}{{if !isset($data['event_type']) and isset($v['checked']) and $v['checked'] eq true}}selected{{/if}}{{/if}}>{{$v.name}}</option>
|
||||
{{/foreach}}
|
||||
</select>
|
||||
</div>
|
||||
<div class="am-form-group">
|
||||
<div class="am-cf">
|
||||
<div class="am-u-sm-6 am-padding-horizontal-0">
|
||||
<div class="am-form-group">
|
||||
<label>{{:MyLang('form_event_type_title')}}</label>
|
||||
<select name="event_type" class="am-radius chosen-select" data-placeholder="{{:MyLang('optional_tips')}}" data-validation-message="{{:MyLang('form_event_type_message')}}">
|
||||
<option value="">{{:MyLang('optional_tips')}}</option>
|
||||
{{foreach $common_app_event_type as $v}}
|
||||
<option value="{{$v.value}}" {{if isset($data['event_type']) and $data['event_type'] eq $v['value']}}selected{{else /}}{{if !isset($data['event_type']) and isset($v['checked']) and $v['checked'] eq true}}selected{{/if}}{{/if}}>{{$v.name}}</option>
|
||||
{{/foreach}}
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="am-u-sm-6 am-padding-horizontal-0">
|
||||
<div class="am-form-group">
|
||||
<label>{{:MyLang('appcenternav.form_item_desc')}}</label>
|
||||
<input type="text" name="desc" placeholder="{{:MyLang('appcenternav.form_item_desc_message')}}" data-validation-message="{{:MyLang('appcenternav.form_item_desc_message')}}" class="am-radius" {{if !empty($data['desc'])}} value="{{$data.desc}}"{{/if}} />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="am-form-group">
|
||||
<label>{{:MyLang('form_event_value_title')}}</label>
|
||||
<input type="text" name="event_value" placeholder="{{:MyLang('form_event_value_message')}}" data-validation-message="{{:MyLang('appcenternav.form_item_event_value_message')}}" class="am-radius" {{if !empty($data['event_value'])}} value="{{$data.event_value}}"{{/if}} />
|
||||
{{include file="public/event_value_tips" /}}
|
||||
</div>
|
||||
|
||||
<div class="am-form-group">
|
||||
<label>{{:MyLang('appcenternav.form_item_desc')}}</label>
|
||||
<input type="text" name="desc" placeholder="{{:MyLang('appcenternav.form_item_desc_message')}}" data-validation-message="{{:MyLang('appcenternav.form_item_desc_message')}}" class="am-radius" {{if !empty($data['desc'])}} value="{{$data.desc}}"{{/if}} />
|
||||
</div>
|
||||
<div class="am-cf">
|
||||
<div class="am-u-sm-6 am-padding-horizontal-0">
|
||||
<div class="am-form-group am-form-file">
|
||||
<label class="am-block">{{:MyLang('appcenternav.form_item_images_url')}}<span class="am-form-group-label-tips-must">*</span></label>
|
||||
<ul class="plug-file-upload-view slide-images_url-images-view" data-form-name="images_url" data-max-number="1" data-delete="0" data-dialog-type="images">
|
||||
<li>
|
||||
<input type="text" name="images_url" value="{{if !empty($data['images_url'])}}{{$data.images_url}}{{/if}}" data-validation-message="{{:MyLang('form_upload_images_message')}}" required />
|
||||
<img src="{{if !empty($data['images_url'])}}{{$data.images_url}}{{else /}}{{$attachment_host}}/static/admin/default/images/default-images.jpg{{/if}}" />
|
||||
</li>
|
||||
</ul>
|
||||
<div class="plug-file-upload-submit" data-view-tag="ul.slide-images_url-images-view">+ {{:MyLang('form_upload_images_title')}}</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="am-u-sm-6 am-padding-horizontal-0">
|
||||
<div class="am-cf">
|
||||
<div class="am-u-sm-12 am-padding-horizontal-0">
|
||||
{{include file="lib/sort" /}}
|
||||
</div>
|
||||
<div class="am-u-sm-12 am-padding-horizontal-0">
|
||||
{{include file="lib/is_enable" /}}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="am-form-group am-form-file">
|
||||
<label class="am-block">{{:MyLang('appcenternav.form_item_images_url')}}<span class="am-form-group-label-tips-must">*</span></label>
|
||||
<ul class="plug-file-upload-view slide-images_url-images-view" data-form-name="images_url" data-max-number="1" data-delete="0" data-dialog-type="images">
|
||||
<li>
|
||||
<input type="text" name="images_url" value="{{if !empty($data['images_url'])}}{{$data.images_url}}{{/if}}" data-validation-message="{{:MyLang('form_upload_images_message')}}" required />
|
||||
<img src="{{if !empty($data['images_url'])}}{{$data.images_url}}{{else /}}{{$attachment_host}}/static/admin/default/images/default-images.jpg{{/if}}" />
|
||||
</li>
|
||||
</ul>
|
||||
<div class="plug-file-upload-submit" data-view-tag="ul.slide-images_url-images-view">+ {{:MyLang('form_upload_images_title')}}</div>
|
||||
</div>
|
||||
{{include file="lib/sort" /}}
|
||||
{{include file="lib/is_enable" /}}
|
||||
<div class="am-form-group am-form-group-refreshing am-margin-top-lg am-padding-left-0">
|
||||
<div class="am-form-popup-submit">
|
||||
<input type="hidden" name="id" {{if !empty($data)}} value="{{$data.id}}"{{/if}} />
|
||||
<button type="submit" class="am-btn am-btn-primary am-radius btn-loading-example am-btn-sm am-btn-block" data-am-loading="{loadingText:'{{:MyLang('processing_tips')}}'}">{{:MyLang('save_title')}}</button>
|
||||
</div>
|
||||
@ -65,7 +90,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<!-- right content end -->
|
||||
|
||||
|
||||
<!-- footer start -->
|
||||
{{include file="public/footer" /}}
|
||||
<!-- footer end -->
|
@ -12,7 +12,7 @@
|
||||
<div class="am-form-group">
|
||||
<label>{{$data.common_app_is_use_mobile_detail.name}}<span class="am-form-group-label-tips">{{$data.common_app_is_use_mobile_detail.describe}}</span></label>
|
||||
<select name="{{$data.common_app_is_use_mobile_detail.only_tag}}" class="am-radius chosen-select" data-validation-message="{{$data.common_app_is_use_mobile_detail.error_tips}}" required>
|
||||
{{foreach $common_is_text_list as $v}}
|
||||
{{foreach :MyLang('common_is_text_list') as $v}}
|
||||
<option value="{{$v.id}}" {{if isset($data['common_app_is_use_mobile_detail']['value']) and $data['common_app_is_use_mobile_detail']['value'] eq $v['id']}}selected{{/if}}>{{$v.name}}</option>
|
||||
{{/foreach}}
|
||||
</select>
|
||||
@ -21,7 +21,7 @@
|
||||
<div class="am-form-group">
|
||||
<label>{{$data.common_user_is_mandatory_bind_mobile.name}}<span class="am-form-group-label-tips">{{$data.common_user_is_mandatory_bind_mobile.describe}}</span></label>
|
||||
<select name="{{$data.common_user_is_mandatory_bind_mobile.only_tag}}" class="am-radius chosen-select" data-validation-message="{{$data.common_user_is_mandatory_bind_mobile.error_tips}}" required>
|
||||
{{foreach $common_is_text_list as $v}}
|
||||
{{foreach :MyLang('common_is_text_list') as $v}}
|
||||
<option value="{{$v.id}}" {{if isset($data['common_user_is_mandatory_bind_mobile']['value']) and $data['common_user_is_mandatory_bind_mobile']['value'] eq $v['id']}}selected{{/if}}>{{$v.name}}</option>
|
||||
{{/foreach}}
|
||||
</select>
|
||||
@ -30,7 +30,7 @@
|
||||
<div class="am-form-group">
|
||||
<label>{{$data.common_user_onekey_bind_mobile_list.name}}<span class="am-form-group-label-tips">{{$data.common_user_onekey_bind_mobile_list.describe}}</span></label>
|
||||
<select name="{{$data.common_user_onekey_bind_mobile_list.only_tag}}" class="am-radius chosen-select" data-placeholder="{{$data.common_user_onekey_bind_mobile_list.name}}" multiple data-validation-message="{{$data.common_user_onekey_bind_mobile_list.error_tips}}">
|
||||
{{foreach $common_platform_type as $v}}
|
||||
{{foreach :MyLang('common_platform_type') as $v}}
|
||||
{{if in_array($v['value'], ['weixin', 'baidu', 'toutiao'])}}
|
||||
<option value="{{$v.value}}" {{if isset($data['common_user_onekey_bind_mobile_list']['value']) and in_array($v['value'], $data['common_user_onekey_bind_mobile_list']['value'])}}selected{{/if}}>{{$v.name}}</option>
|
||||
{{/if}}
|
||||
@ -47,7 +47,7 @@
|
||||
<div class="am-form-group">
|
||||
<label>{{$data.common_user_address_platform_import_list.name}}<span class="am-form-group-label-tips">{{$data.common_user_address_platform_import_list.describe}}</span></label>
|
||||
<select name="{{$data.common_user_address_platform_import_list.only_tag}}" class="am-radius chosen-select" data-placeholder="{{$data.common_user_address_platform_import_list.name}}" multiple data-validation-message="{{$data.common_user_address_platform_import_list.error_tips}}">
|
||||
{{foreach $common_platform_type as $v}}
|
||||
{{foreach :MyLang('common_platform_type') as $v}}
|
||||
{{if in_array($v['value'], ['weixin', 'baidu', 'alipay', 'qq', 'toutiao'])}}
|
||||
<option value="{{$v.value}}" {{if isset($data['common_user_address_platform_import_list']['value']) and in_array($v['value'], $data['common_user_address_platform_import_list']['value'])}}selected{{/if}}>{{$v.name}}</option>
|
||||
{{/if}}
|
||||
@ -64,7 +64,7 @@
|
||||
<div class="am-form-group">
|
||||
<label>{{$data.common_app_is_enable_search.name}}<span class="am-form-group-label-tips">{{$data.common_app_is_enable_search.describe}}</span></label>
|
||||
<select name="{{$data.common_app_is_enable_search.only_tag}}" class="am-radius chosen-select" data-validation-message="{{$data.common_app_is_enable_search.error_tips}}" required>
|
||||
{{foreach $common_is_text_list as $v}}
|
||||
{{foreach :MyLang('common_is_text_list') as $v}}
|
||||
<option value="{{$v.id}}" {{if isset($data['common_app_is_enable_search']['value']) and $data['common_app_is_enable_search']['value'] eq $v['id']}}selected{{/if}}>{{$v.name}}</option>
|
||||
{{/foreach}}
|
||||
</select>
|
||||
@ -73,7 +73,7 @@
|
||||
<div class="am-form-group">
|
||||
<label>{{$data.common_app_is_header_nav_fixed.name}}<span class="am-form-group-label-tips">{{$data.common_app_is_header_nav_fixed.describe}}</span></label>
|
||||
<select name="{{$data.common_app_is_header_nav_fixed.only_tag}}" class="am-radius chosen-select" data-validation-message="{{$data.common_app_is_header_nav_fixed.error_tips}}" required>
|
||||
{{foreach $common_is_text_list as $v}}
|
||||
{{foreach :MyLang('common_is_text_list') as $v}}
|
||||
<option value="{{$v.id}}" {{if isset($data['common_app_is_header_nav_fixed']['value']) and $data['common_app_is_header_nav_fixed']['value'] eq $v['id']}}selected{{/if}}>{{$v.name}}</option>
|
||||
{{/foreach}}
|
||||
</select>
|
||||
@ -82,7 +82,7 @@
|
||||
<div class="am-form-group">
|
||||
<label>{{$data.common_app_is_enable_answer.name}}<span class="am-form-group-label-tips">{{$data.common_app_is_enable_answer.describe}}</span></label>
|
||||
<select name="{{$data.common_app_is_enable_answer.only_tag}}" class="am-radius chosen-select" data-validation-message="{{$data.common_app_is_enable_answer.error_tips}}" required>
|
||||
{{foreach $common_is_text_list as $v}}
|
||||
{{foreach :MyLang('common_is_text_list') as $v}}
|
||||
<option value="{{$v.id}}" {{if isset($data['common_app_is_enable_answer']['value']) and $data['common_app_is_enable_answer']['value'] eq $v['id']}}selected{{/if}}>{{$v.name}}</option>
|
||||
{{/foreach}}
|
||||
</select>
|
||||
@ -91,7 +91,7 @@
|
||||
<div class="am-form-group">
|
||||
<label>{{$data.common_app_is_online_service.name}}<span class="am-form-group-label-tips">{{$data.common_app_is_online_service.describe}}</span></label>
|
||||
<select name="{{$data.common_app_is_online_service.only_tag}}" class="am-radius chosen-select" data-validation-message="{{$data.common_app_is_online_service.error_tips}}" required>
|
||||
{{foreach $common_is_text_list as $v}}
|
||||
{{foreach :MyLang('common_is_text_list') as $v}}
|
||||
<option value="{{$v.id}}" {{if isset($data['common_app_is_online_service']['value']) and $data['common_app_is_online_service']['value'] eq $v['id']}}selected{{/if}}>{{$v.name}}</option>
|
||||
{{/foreach}}
|
||||
</select>
|
||||
@ -100,7 +100,7 @@
|
||||
<div class="am-form-group">
|
||||
<label>{{$data.common_app_is_head_vice_nav.name}}<span class="am-form-group-label-tips">{{$data.common_app_is_head_vice_nav.describe}}</span></label>
|
||||
<select name="{{$data.common_app_is_head_vice_nav.only_tag}}" class="am-radius chosen-select" data-validation-message="{{$data.common_app_is_head_vice_nav.error_tips}}" required>
|
||||
{{foreach $common_is_text_list as $v}}
|
||||
{{foreach :MyLang('common_is_text_list') as $v}}
|
||||
<option value="{{$v.id}}" {{if isset($data['common_app_is_head_vice_nav']['value']) and $data['common_app_is_head_vice_nav']['value'] eq $v['id']}}selected{{/if}}>{{$v.name}}</option>
|
||||
{{/foreach}}
|
||||
</select>
|
||||
|
@ -16,7 +16,7 @@
|
||||
<div class="am-form-group">
|
||||
<label>{{$data.common_is_mobile_concise_model.name}}<span class="am-form-group-label-tips">{{$data.common_is_mobile_concise_model.describe}}</span></label>
|
||||
<select name="{{$data.common_is_mobile_concise_model.only_tag}}" class="am-radius chosen-select" data-validation-message="{{$data.common_is_mobile_concise_model.error_tips}}" required>
|
||||
{{foreach $common_is_text_list as $v}}
|
||||
{{foreach :MyLang('common_is_text_list') as $v}}
|
||||
<option value="{{$v.id}}" {{if isset($data['common_is_mobile_concise_model']['value']) and $data['common_is_mobile_concise_model']['value'] eq $v['id']}}selected{{/if}}>{{$v.name}}</option>
|
||||
{{/foreach}}
|
||||
</select>
|
||||
@ -44,7 +44,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<!-- right content end -->
|
||||
|
||||
|
||||
<!-- footer start -->
|
||||
{{include file="public/footer" /}}
|
||||
<!-- footer end -->
|
@ -1,8 +1,9 @@
|
||||
<ul class="am-nav am-nav-pills table-nav second-nav">
|
||||
<li {{if $nav_type eq 'base'}}class="am-active"{{/if}} data-type="base">
|
||||
<a href="{{:MyUrl('admin/appconfig/index', ['nav_type'=>'base'])}}">{{:MyLang('base_config_title')}}</a>
|
||||
</li>
|
||||
<li {{if $nav_type eq 'app'}}class="am-active"{{/if}} data-type="app">
|
||||
<a href="{{:MyUrl('admin/appconfig/index', ['nav_type'=>'app'])}}">APP/小程序</a>
|
||||
</li>
|
||||
</ul>
|
||||
{{if !empty($nav_data) and is_array($nav_data)}}
|
||||
<ul class="am-nav am-nav-pills table-nav second-nav">
|
||||
{{foreach $nav_data as $v}}
|
||||
<li {{if $nav_type eq $v['type']}}class="am-active"{{/if}} data-type="{{$v.type}}">
|
||||
<a href="{{:MyUrl('admin/appconfig/index', ['type'=>$v['type']])}}">{{$v.name}}</a>
|
||||
</li>
|
||||
{{/foreach}}
|
||||
</ul>
|
||||
{{/if}}
|
@ -4,66 +4,98 @@
|
||||
<div class="content-right">
|
||||
<div class="content">
|
||||
<!-- form start -->
|
||||
<form class="am-form form-validation" action="{{:MyUrl('admin/apphomenav/save')}}" method="POST" request-type="ajax-url" request-value="{{:MyUrl('admin/apphomenav/index', $params)}}" enctype="multipart/form-data">
|
||||
<form class="am-form form-validation am-form-pure am-form-full-screen am-form-popup-fixed" action="{{:MyUrl('admin/apphomenav/save')}}" method="POST" request-type="ajax-url" request-value="{{:MyUrl('admin/apphomenav/index', $params)}}" enctype="multipart/form-data">
|
||||
<legend>
|
||||
<span class="am-text-default">{{:MyLang('apphomenav.base_nav_title')}}{{if empty($data['id'])}}{{:MyLang('created_title')}}{{else /}}{{:MyLang('edit_title')}}{{/if}}</span>
|
||||
<a href="{{:MyUrl('admin/apphomenav/index', $params)}}" class="am-fr am-text-sm am-margin-top-sm am-icon-mail-reply"> {{:MyLang('retreat_title')}}</a>
|
||||
</legend>
|
||||
<div class="am-form-group">
|
||||
<label>{{:MyLang('apphomenav.form_item_name')}}<span class="am-form-group-label-tips-must">*</span></label>
|
||||
<input type="text" name="name" placeholder="{{:MyLang('apphomenav.form_item_name_message')}}" minlength="2" maxlength="60" data-validation-message="{{:MyLang('apphomenav.form_item_name_message')}}" class="am-radius" {{if !empty($data['name'])}} value="{{$data.name}}"{{/if}} required />
|
||||
</div>
|
||||
|
||||
<div class="am-form-group">
|
||||
<label>{{:MyLang('form_platform_title')}}<span class="am-form-group-label-tips-must">*</span></label>
|
||||
<select name="platform" class="am-radius chosen-select" data-placeholder="{{:MyLang('optional_tips')}}" data-validation-message="{{:MyLang('form_platform_message')}}" required>
|
||||
<option value="">{{:MyLang('optional_tips')}}</option>
|
||||
{{foreach $common_platform_type as $v}}
|
||||
<option value="{{$v.value}}" {{if isset($data['platform']) and $data['platform'] eq $v['value']}}selected{{else /}}{{if !isset($data['platform']) and isset($v['checked']) and $v['checked'] eq true}}selected{{/if}}{{/if}}>{{$v.name}}</option>
|
||||
{{/foreach}}
|
||||
</select>
|
||||
</div>
|
||||
<div class="am-cf">
|
||||
<div class="am-u-sm-6 am-padding-horizontal-0">
|
||||
<div class="am-form-group">
|
||||
<label>{{:MyLang('apphomenav.form_item_name')}}<span class="am-form-group-label-tips-must">*</span></label>
|
||||
<input type="text" name="name" placeholder="{{:MyLang('apphomenav.form_item_name_message')}}" minlength="2" maxlength="60" data-validation-message="{{:MyLang('apphomenav.form_item_name_message')}}" class="am-radius" {{if !empty($data['name'])}} value="{{$data.name}}"{{/if}} required />
|
||||
</div>
|
||||
</div>
|
||||
<div class="am-u-sm-6 am-padding-horizontal-0">
|
||||
<div class="am-form-group">
|
||||
<label>{{:MyLang('form_platform_title')}}<span class="am-form-group-label-tips-must">*</span></label>
|
||||
<select name="platform" class="am-radius chosen-select" data-placeholder="{{:MyLang('optional_tips')}}" data-validation-message="{{:MyLang('form_platform_message')}}" required>
|
||||
<option value="">{{:MyLang('optional_tips')}}</option>
|
||||
{{foreach $common_platform_type as $v}}
|
||||
<option value="{{$v.value}}" {{if isset($data['platform']) and $data['platform'] eq $v['value']}}selected{{else /}}{{if !isset($data['platform']) and isset($v['checked']) and $v['checked'] eq true}}selected{{/if}}{{/if}}>{{$v.name}}</option>
|
||||
{{/foreach}}
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="am-form-group">
|
||||
<label>{{:MyLang('form_event_type_title')}}</label>
|
||||
<select name="event_type" class="am-radius chosen-select" data-placeholder="{{:MyLang('optional_tips')}}" data-validation-message="{{:MyLang('form_event_type_message')}}">
|
||||
<option value="">{{:MyLang('optional_tips')}}</option>
|
||||
{{foreach $common_app_event_type as $v}}
|
||||
<option value="{{$v.value}}" {{if isset($data['event_type']) and $data['event_type'] eq $v['value']}}selected{{else /}}{{if !isset($data['event_type']) and isset($v['checked']) and $v['checked'] eq true}}selected{{/if}}{{/if}}>{{$v.name}}</option>
|
||||
{{/foreach}}
|
||||
</select>
|
||||
</div>
|
||||
<div class="am-form-group">
|
||||
<div class="am-cf">
|
||||
<div class="am-u-sm-6 am-padding-horizontal-0">
|
||||
<div class="am-form-group">
|
||||
<label>{{:MyLang('form_event_type_title')}}</label>
|
||||
<select name="event_type" class="am-radius chosen-select" data-placeholder="{{:MyLang('optional_tips')}}" data-validation-message="{{:MyLang('form_event_type_message')}}">
|
||||
<option value="">{{:MyLang('optional_tips')}}</option>
|
||||
{{foreach $common_app_event_type as $v}}
|
||||
<option value="{{$v.value}}" {{if isset($data['event_type']) and $data['event_type'] eq $v['value']}}selected{{else /}}{{if !isset($data['event_type']) and isset($v['checked']) and $v['checked'] eq true}}selected{{/if}}{{/if}}>{{$v.name}}</option>
|
||||
{{/foreach}}
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="am-u-sm-6 am-padding-horizontal-0">
|
||||
<div class="am-form-group">
|
||||
<label>{{:MyLang('form_bg_color_title')}}</label>
|
||||
<input type="hidden" name="bg_color" value="{{if !empty($data['bg_color'])}}{{$data.bg_color}}{{/if}}" />
|
||||
<button class="am-btn am-btn-default am-btn-xs colorpicker-submit bg-color-tag am-btn-block bk-cr-white t-r" type="button" data-input-tag="button.bg-color-tag" data-color-tag="input[name='bg_color']" data-color-style="background-color" {{if !empty($data)}} style="background-color:{{$data.bg_color}};"{{/if}}>
|
||||
<img src="{{$attachment_host}}/static/common/images/colorpicker.png" />
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="am-form-group">
|
||||
<label>{{:MyLang('form_event_value_title')}}</label>
|
||||
<input type="text" name="event_value" placeholder="{{:MyLang('form_event_value_message')}}" data-validation-message="{{:MyLang('form_event_value_message')}}" class="am-radius" {{if !empty($data['event_value'])}} value="{{$data.event_value}}"{{/if}} />
|
||||
{{include file="public/event_value_tips" /}}
|
||||
</div>
|
||||
|
||||
<div class="am-form-group am-form-file">
|
||||
<label class="am-block">{{:MyLang('form_item_images_url')}}<span class="am-form-group-label-tips-must">*</span></label>
|
||||
<ul class="plug-file-upload-view slide-images_url-images-view" data-form-name="images_url" data-max-number="1" data-delete="0" data-dialog-type="images">
|
||||
<li>
|
||||
<input type="text" name="images_url" value="{{if !empty($data['images_url'])}}{{$data.images_url}}{{/if}}" data-validation-message="{{:MyLang('form_upload_images_message')}}" required />
|
||||
<img src="{{if !empty($data['images_url'])}}{{$data.images_url}}{{else /}}{{$attachment_host}}/static/admin/default/images/default-images.jpg{{/if}}" />
|
||||
</li>
|
||||
</ul>
|
||||
<div class="plug-file-upload-submit" data-view-tag="ul.slide-images_url-images-view">+ {{:MyLang('form_upload_images_title')}}</div>
|
||||
</div>
|
||||
<div class="am-form-group">
|
||||
<label>{{:MyLang('form_bg_color_title')}}</label>
|
||||
<input type="hidden" name="bg_color" value="{{if !empty($data)}}{{$data.bg_color}}{{/if}}" />
|
||||
<button class="am-btn am-btn-default am-btn-xs colorpicker-submit bg-color-tag am-btn-block bk-cr-white t-r" type="button" data-input-tag="button.bg-color-tag" data-color-tag="input[name='bg_color']" data-color-style="background-color" {{if !empty($data)}} style="background-color:{{$data.bg_color}};"{{/if}}>
|
||||
<img src="{{$attachment_host}}/static/common/images/colorpicker.png" />
|
||||
</button>
|
||||
</div>
|
||||
{{include file="lib/sort" /}}
|
||||
{{include file="lib/is_enable" /}}
|
||||
<div class="am-form-group">
|
||||
<label class="am-block">{{:MyLang('apphomenav.form_item_is_need_login')}}</label>
|
||||
<input name="is_need_login" value="1" type="checkbox" data-off-text="{{:MyLang('no_title')}}" data-on-text="{{:MyLang('yes_title')}}" data-size="xs" data-on-color="success" data-off-color="default" data-handle-width="50" data-am-switch {{if !empty($data) and $data['is_need_login'] eq 1}} checked="true"{{/if}} />
|
||||
</div>
|
||||
<div class="am-form-group am-form-group-refreshing am-margin-top-lg am-padding-left-0">
|
||||
<input type="hidden" name="id" {{if !empty($data)}} value="{{$data.id}}"{{/if}} />
|
||||
<div class="am-cf">
|
||||
<div class="am-u-sm-6 am-padding-horizontal-0">
|
||||
<div class="am-form-group am-form-file">
|
||||
<label class="am-block">{{:MyLang('form_item_images_url')}}<span class="am-form-group-label-tips-must">*</span></label>
|
||||
<ul class="plug-file-upload-view slide-images_url-images-view" data-form-name="images_url" data-max-number="1" data-delete="0" data-dialog-type="images">
|
||||
<li>
|
||||
<input type="text" name="images_url" value="{{if !empty($data['images_url'])}}{{$data.images_url}}{{/if}}" data-validation-message="{{:MyLang('form_upload_images_message')}}" required />
|
||||
<img src="{{if !empty($data['images_url'])}}{{$data.images_url}}{{else /}}{{$attachment_host}}/static/admin/default/images/default-images.jpg{{/if}}" />
|
||||
</li>
|
||||
</ul>
|
||||
<div class="plug-file-upload-submit" data-view-tag="ul.slide-images_url-images-view">+ {{:MyLang('form_upload_images_title')}}</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="am-u-sm-6 am-padding-horizontal-0">
|
||||
<div class="am-cf">
|
||||
<div class="am-u-sm-12 am-padding-horizontal-0">
|
||||
{{include file="lib/sort" /}}
|
||||
</div>
|
||||
<div class="am-u-sm-12 am-padding-horizontal-0">
|
||||
<div class="am-cf">
|
||||
<div class="am-u-sm-12 am-u-md-6 am-padding-horizontal-0">
|
||||
{{include file="lib/is_enable" /}}
|
||||
</div>
|
||||
<div class="am-u-sm-12 am-u-md-6 am-padding-horizontal-0">
|
||||
<div class="am-form-group">
|
||||
<label class="am-block">{{:MyLang('apphomenav.form_item_is_need_login')}}</label>
|
||||
<input name="is_need_login" value="1" type="checkbox" data-off-text="{{:MyLang('no_title')}}" data-on-text="{{:MyLang('yes_title')}}" data-size="xs" data-on-color="success" data-off-color="default" data-handle-width="50" data-am-switch {{if !empty($data) and $data['is_need_login'] eq 1}} checked="true"{{/if}} />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="am-form-popup-submit">
|
||||
<input type="hidden" name="id" {{if !empty($data['id'])}} value="{{$data.id}}"{{/if}} />
|
||||
<button type="submit" class="am-btn am-btn-primary am-radius btn-loading-example am-btn-sm am-btn-block" data-am-loading="{loadingText:'{{:MyLang('processing_tips')}}'}">{{:MyLang('save_title')}}</button>
|
||||
</div>
|
||||
</form>
|
||||
@ -71,7 +103,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<!-- right content end -->
|
||||
|
||||
|
||||
<!-- footer start -->
|
||||
{{include file="public/footer" /}}
|
||||
<!-- footer end -->
|
@ -224,7 +224,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<!-- right content end -->
|
||||
|
||||
|
||||
<!-- footer start -->
|
||||
{{include file="public/footer" /}}
|
||||
<!-- footer end -->
|
@ -44,7 +44,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<!-- right content end -->
|
||||
|
||||
|
||||
<!-- footer start -->
|
||||
{{include file="public/footer" /}}
|
||||
<!-- footer end -->
|
||||
|
@ -104,7 +104,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<!-- right content end -->
|
||||
|
||||
|
||||
<!-- footer start -->
|
||||
{{include file="public/footer" /}}
|
||||
<!-- footer end -->
|
@ -44,7 +44,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<!-- right content end -->
|
||||
|
||||
|
||||
<!-- footer start -->
|
||||
{{include file="public/footer" /}}
|
||||
<!-- footer end -->
|
||||
|
2
app/admin/view/default/cache/index.html
vendored
2
app/admin/view/default/cache/index.html
vendored
@ -19,7 +19,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<!-- right content end -->
|
||||
|
||||
|
||||
<!-- footer start -->
|
||||
{{include file="public/footer" /}}
|
||||
<!-- footer end -->
|
@ -186,7 +186,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<!-- right content end -->
|
||||
|
||||
|
||||
<!-- footer start -->
|
||||
{{include file="public/footer" /}}
|
||||
<!-- footer end -->
|
@ -32,7 +32,7 @@
|
||||
<div class="am-form-group">
|
||||
<label>{{$data.common_email_is_use_ssl.name}}</label>
|
||||
<select name="{{$data.common_email_is_use_ssl.only_tag}}" class="am-radius chosen-select" data-validation-message="{{$data.common_email_is_use_ssl.error_tips}}" required>
|
||||
{{foreach $common_is_text_list as $v}}
|
||||
{{foreach :MyLang('common_is_text_list') as $v}}
|
||||
<option value="{{$v.id}}" {{if isset($data['common_email_is_use_ssl']['value']) and $data['common_email_is_use_ssl']['value'] eq $v['id']}}selected{{/if}}>{{$v.name}}</option>
|
||||
{{/foreach}}
|
||||
</select>
|
||||
|
@ -1,5 +1,5 @@
|
||||
<ul class="am-nav am-nav-pills table-nav second-nav">
|
||||
{{if !empty($nav_data)}}
|
||||
{{if !empty($nav_data) and is_array($nav_data)}}
|
||||
{{foreach $nav_data as $v}}
|
||||
<li {{if $nav_type eq $v['type']}}class="am-active"{{/if}} data-type="{{$v.type}}">
|
||||
<a href="{{:MyUrl('admin/email/index', ['type'=>$v['type']])}}">{{$v.name}}</a>
|
||||
|
@ -59,7 +59,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<!-- right content end -->
|
||||
|
||||
|
||||
<!-- footer start -->
|
||||
{{include file="public/footer" /}}
|
||||
<!-- footer end -->
|
||||
|
@ -85,7 +85,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<!-- right content end -->
|
||||
|
||||
|
||||
<!-- footer start -->
|
||||
{{include file="public/footer" /}}
|
||||
<!-- footer end -->
|
@ -64,7 +64,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<!-- right content end -->
|
||||
|
||||
|
||||
<!-- footer start -->
|
||||
{{include file="public/footer" /}}
|
||||
<!-- footer end -->
|
@ -1,4 +1,4 @@
|
||||
{{if !empty($nav_data)}}
|
||||
{{if !empty($nav_data) and is_array($nav_data)}}
|
||||
<ul class="am-nav am-nav-pills table-nav second-nav">
|
||||
{{foreach $nav_data as $v}}
|
||||
<li {{if $nav_type eq $v['type']}}class="am-active"{{/if}} data-type="{{$v.type}}">
|
||||
|
@ -165,7 +165,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<!-- right content end -->
|
||||
|
||||
|
||||
<!-- footer start -->
|
||||
{{include file="public/footer" /}}
|
||||
<!-- footer end -->
|
||||
|
@ -110,11 +110,11 @@
|
||||
<img src="{{$v.logo}}" class="icon" />
|
||||
<div class="base">
|
||||
<h3 class="name">{{$v.name}}</h3>
|
||||
<p>{{:MyLang('pluginsadmin.data_list_author_title')}}:{{$v.author}}</p>
|
||||
<p>{{:MyLang('pluginsadmin.data_list_author_title')}}{{$v.author}}</p>
|
||||
{{if empty($site_store_info) or empty($site_store_info['vip']) or !isset($site_store_info['vip']['status']) or $site_store_info['vip']['status'] eq 0}}
|
||||
<p>{{:MyLang('pluginsadmin.data_list_author_url_title')}}:<a href="{{$v.author_url}}" target="_blank">{{$v.author_url}}</a></p>
|
||||
<p>{{:MyLang('pluginsadmin.data_list_author_url_title')}}<a href="{{$v.author_url}}" target="_blank">{{$v.author_url}}</a></p>
|
||||
{{/if}}
|
||||
<p>{{:MyLang('pluginsadmin.data_list_version_title')}}:{{$v.version}}</p>
|
||||
<p>{{:MyLang('pluginsadmin.data_list_version_title')}}{{$v.version}}</p>
|
||||
</div>
|
||||
<div class="desc">{{$v.desc}}</div>
|
||||
<div class="operation">
|
||||
|
@ -1,5 +1,5 @@
|
||||
<ul class="am-nav am-nav-pills table-nav">
|
||||
{{if !empty($nav_data)}}
|
||||
{{if !empty($nav_data) and is_array($nav_data)}}
|
||||
{{foreach $nav_data as $v}}
|
||||
<li {{if $view_type eq $v['type']}}class="am-active"{{/if}}>
|
||||
<a href="{{:MyUrl('admin/pluginsadmin/index', ['view_type'=>$v['type']])}}">{{$v.name}}</a>
|
||||
|
@ -143,7 +143,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<!-- right content end -->
|
||||
|
||||
|
||||
<!-- footer start -->
|
||||
{{include file="public/footer" /}}
|
||||
<!-- footer end -->
|
@ -33,8 +33,8 @@
|
||||
<div class="am-cf">
|
||||
<div class="am-u-sm-6 am-padding-horizontal-0">
|
||||
<div class="am-form-group">
|
||||
<label>{{:MyLang('form_event_type_title')}}<span class="am-form-group-label-tips-must">*</span></label>
|
||||
<select name="event_type" class="am-radius chosen-select" data-placeholder="{{:MyLang('optional_tips')}}" data-validation-message="{{:MyLang('form_event_type_message')}}" required>
|
||||
<label>{{:MyLang('form_event_type_title')}}</label>
|
||||
<select name="event_type" class="am-radius chosen-select" data-placeholder="{{:MyLang('optional_tips')}}" data-validation-message="{{:MyLang('form_event_type_message')}}" >
|
||||
<option value="">{{:MyLang('optional_tips')}}</option>
|
||||
{{foreach $common_app_event_type as $v}}
|
||||
<option value="{{$v.value}}" {{if isset($data['event_type']) and $data['event_type'] eq $v['value']}}selected{{else /}}{{if !isset($data['event_type']) and isset($v['checked']) and $v['checked'] eq true}}selected{{/if}}{{/if}}>{{$v.name}}</option>
|
||||
|
@ -1,18 +1,16 @@
|
||||
<!-- 继承公共的 form -->
|
||||
{{extend name="public/module/form" /}}
|
||||
|
||||
<!-- 公共导航容器 -->
|
||||
{{block name="form_navigation"}}
|
||||
<!-- 仅超级管理员显示的温馨提示 -->
|
||||
<div class="am-alert am-alert-danger" data-am-alert>
|
||||
<button type="button" class="am-close">×</button>
|
||||
<p>{{:MyLang('role.admin_not_modify_tips')}}</p>
|
||||
</div>
|
||||
{{/block}}
|
||||
|
||||
<!-- 表单顶部操作栏 -->
|
||||
{{block name="form_operate_top"}}
|
||||
<a href="{{:MyUrl('admin/role/saveinfo')}}" class="am-btn am-btn-secondary am-radius am-btn-xs am-icon-plus"> {{:MyLang('add_title')}}</a>
|
||||
<!-- 父级内容 -->
|
||||
{__block__}
|
||||
{{/block}}
|
||||
|
||||
<!-- 底部提示信息 -->
|
||||
{{block name="form_operate_bottom"}}
|
||||
<div class="am-alert am-alert-danger">
|
||||
<p>{{:MyLang('role.admin_not_modify_tips')}}</p>
|
||||
</div>
|
||||
{{/block}}
|
@ -104,7 +104,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<!-- right content end -->
|
||||
|
||||
|
||||
<!-- footer start -->
|
||||
{{include file="public/footer" /}}
|
||||
<!-- footer end -->
|
@ -4,68 +4,88 @@
|
||||
<div class="content-right">
|
||||
<div class="content">
|
||||
<!-- form start -->
|
||||
<form class="am-form form-validation" action="{{:MyUrl('admin/slide/save')}}" method="POST" request-type="ajax-url" request-value="{{:MyUrl('admin/slide/index', $params)}}" enctype="multipart/form-data">
|
||||
<form class="am-form form-validation am-form-pure am-form-full-screen am-form-popup-fixed" action="{{:MyUrl('admin/slide/save')}}" method="POST" request-type="ajax-url" request-value="{{:MyUrl('admin/slide/index', $params)}}" enctype="multipart/form-data">
|
||||
<legend>
|
||||
<span class="am-text-default">轮播{{if empty($data['id'])}}{{:MyLang('created_title')}}{{else /}}{{:MyLang('edit_title')}}{{/if}}</span>
|
||||
<span class="am-text-default">{{:MyLang('slide.base_nav_title')}}{{if empty($data['id'])}}{{:MyLang('created_title')}}{{else /}}{{:MyLang('edit_title')}}{{/if}}</span>
|
||||
<a href="{{:MyUrl('admin/slide/index', $params)}}" class="am-fr am-text-sm am-margin-top-sm am-icon-mail-reply"> {{:MyLang('retreat_title')}}</a>
|
||||
</legend>
|
||||
<div class="am-form-group">
|
||||
<label>名称<span class="am-form-group-label-tips-must">*</span></label>
|
||||
<input type="text" name="name" placeholder="名称" minlength="2" maxlength="60" data-validation-message="名称格式 2~60 个字符" class="am-radius" {{if !empty($data['name'])}} value="{{$data.name}}"{{/if}} required />
|
||||
</div>
|
||||
|
||||
<div class="am-form-group">
|
||||
<label>{{:MyLang('form_platform_title')}}<span class="am-form-group-label-tips-must">*</span></label>
|
||||
<select name="platform" class="am-radius chosen-select" data-placeholder="{{:MyLang('optional_tips')}}" data-validation-message="{{:MyLang('form_platform_message')}}" required>
|
||||
<option value="">{{:MyLang('optional_tips')}}</option>
|
||||
{{foreach :MyLang('common_platform_type') as $v}}
|
||||
<option value="{{$v.value}}" {{if isset($data['platform']) and $data['platform'] eq $v['value']}}selected{{else /}}{{if !isset($data['platform']) and isset($v['checked']) and $v['checked'] eq true}}selected{{/if}}{{/if}}>{{$v.name}}</option>
|
||||
{{/foreach}}
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="am-form-group">
|
||||
<label>{{:MyLang('form_event_type_title')}}</label>
|
||||
<select name="event_type" class="am-radius chosen-select" data-placeholder="{{:MyLang('optional_tips')}}" data-validation-message="{{:MyLang('form_event_type_message')}}">
|
||||
<option value="">{{:MyLang('optional_tips')}}</option>
|
||||
{{foreach :MyLang('common_app_event_type') as $v}}
|
||||
<option value="{{$v.value}}" {{if isset($data['event_type']) and $data['event_type'] eq $v['value']}}selected{{else /}}{{if !isset($data['event_type']) and isset($v['checked']) and $v['checked'] eq true}}selected{{/if}}{{/if}}>{{$v.name}}</option>
|
||||
{{/foreach}}
|
||||
</select>
|
||||
</div>
|
||||
<div class="am-cf">
|
||||
<div class="am-u-sm-6 am-padding-horizontal-0">
|
||||
<div class="am-form-group">
|
||||
<label>{{:MyLang('slide.form_item_name')}}<span class="am-form-group-label-tips-must">*</span></label>
|
||||
<input type="text" name="name" placeholder="{{:MyLang('slide.form_item_name_message')}}" minlength="2" maxlength="60" data-validation-message="{{:MyLang('slide.form_item_name_message')}}" class="am-radius" {{if !empty($data['name'])}} value="{{$data.name}}"{{/if}} required />
|
||||
</div>
|
||||
</div>
|
||||
<div class="am-u-sm-6 am-padding-horizontal-0">
|
||||
<div class="am-form-group">
|
||||
<label>{{:MyLang('form_platform_title')}}<span class="am-form-group-label-tips-must">*</span></label>
|
||||
<select name="platform" class="am-radius chosen-select" data-placeholder="{{:MyLang('optional_tips')}}" data-validation-message="{{:MyLang('form_platform_message')}}" required>
|
||||
<option value="">{{:MyLang('optional_tips')}}</option>
|
||||
{{foreach :MyLang('common_platform_type') as $v}}
|
||||
<option value="{{$v.value}}" {{if isset($data['platform']) and $data['platform'] eq $v['value']}}selected{{else /}}{{if !isset($data['platform']) and isset($v['checked']) and $v['checked'] eq true}}selected{{/if}}{{/if}}>{{$v.name}}</option>
|
||||
{{/foreach}}
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="am-cf">
|
||||
<div class="am-u-sm-6 am-padding-horizontal-0">
|
||||
<div class="am-form-group">
|
||||
<label>{{:MyLang('form_event_type_title')}}</label>
|
||||
<select name="event_type" class="am-radius chosen-select" data-placeholder="{{:MyLang('optional_tips')}}" data-validation-message="{{:MyLang('form_event_type_message')}}">
|
||||
<option value="">{{:MyLang('optional_tips')}}</option>
|
||||
{{foreach :MyLang('common_app_event_type') as $v}}
|
||||
<option value="{{$v.value}}" {{if isset($data['event_type']) and $data['event_type'] eq $v['value']}}selected{{else /}}{{if !isset($data['event_type']) and isset($v['checked']) and $v['checked'] eq true}}selected{{/if}}{{/if}}>{{$v.name}}</option>
|
||||
{{/foreach}}
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="am-u-sm-6 am-padding-horizontal-0">
|
||||
<div class="am-form-group">
|
||||
<label>{{:MyLang('form_bg_color_title')}}</label>
|
||||
<input type="hidden" name="bg_color" value="{{if !empty($data['bg_color'])}}{{$data.bg_color}}{{/if}}" />
|
||||
<button class="am-btn am-btn-default am-btn-xs colorpicker-submit bg-color-tag am-btn-block bk-cr-white t-r" type="button" data-input-tag="button.bg-color-tag" data-color-tag="input[name='bg_color']" data-color-style="background-color" {{if !empty($data)}} style="background-color:{{$data.bg_color}};"{{/if}}>
|
||||
<img src="{{$attachment_host}}/static/common/images/colorpicker.png" />
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="am-form-group">
|
||||
<label>{{:MyLang('form_event_value_title')}}</label>
|
||||
<input type="text" name="event_value" placeholder="{{:MyLang('form_event_value_message')}}" data-validation-message="{{:MyLang('form_event_value_message')}}" class="am-radius" {{if !empty($data['event_value'])}} value="{{$data.event_value}}"{{/if}} />
|
||||
{{include file="public/event_value_tips" /}}
|
||||
</div>
|
||||
|
||||
<div class="am-form-group am-form-file">
|
||||
<label class="am-block">轮播图片<span class="am-form-group-label-tips-must">*</span></label>
|
||||
<ul class="plug-file-upload-view slide-images_url-images-view" data-form-name="images_url" data-max-number="1" data-delete="0" data-dialog-type="images">
|
||||
<li>
|
||||
<input type="text" name="images_url" value="{{if !empty($data['images_url'])}}{{$data.images_url}}{{/if}}" data-validation-message="{{:MyLang('form_upload_images_message')}}" required />
|
||||
<img src="{{if !empty($data['images_url'])}}{{$data.images_url}}{{else /}}{{$attachment_host}}/static/admin/default/images/default-images.jpg{{/if}}" />
|
||||
</li>
|
||||
</ul>
|
||||
<div class="plug-file-upload-submit" data-view-tag="ul.slide-images_url-images-view">+ {{:MyLang('form_upload_images_title')}}</div>
|
||||
<div class="am-alert am-alert-warning" data-am-alert>
|
||||
<button type="button" class="am-close">×</button>
|
||||
<p>1. PC端建议尺寸:1920x480px</p>
|
||||
<p>2. 手机端建议尺寸:1200x360px</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="am-form-group">
|
||||
<label>{{:MyLang('form_bg_color_title')}}</label>
|
||||
<input type="hidden" name="bg_color" value="{{if !empty($data)}}{{$data.bg_color}}{{/if}}" />
|
||||
<button class="am-btn am-btn-default am-btn-xs colorpicker-submit bg-color-tag am-btn-block bk-cr-white t-r" type="button" data-input-tag="button.bg-color-tag" data-color-tag="input[name='bg_color']" data-color-style="background-color" {{if !empty($data)}} style="background-color:{{$data.bg_color}};"{{/if}}>
|
||||
<img src="{{$attachment_host}}/static/common/images/colorpicker.png" />
|
||||
</button>
|
||||
</div>
|
||||
<div class="am-cf">
|
||||
<div class="am-u-sm-6 am-padding-horizontal-0">
|
||||
<div class="am-form-group am-form-file">
|
||||
<label class="am-block">{{:MyLang('slide.form_item_images_url')}}<span class="am-form-group-label-tips-must">*</span>{{if is_array(MyLang('slide.form_item_images_url_tips'))}}<a href="javascript:;" class="am-icon-question-circle am-text-warning am-margin-left-sm" data-am-popover="{content: '{{:implode('<br />', MyLang('slide.form_item_images_url_tips'))}}', trigger: 'hover focus', theme: 'sm'}"></a>{{/if}}</label>
|
||||
<ul class="plug-file-upload-view slide-images_url-images-view" data-form-name="images_url" data-max-number="1" data-delete="0" data-dialog-type="images">
|
||||
<li>
|
||||
<input type="text" name="images_url" value="{{if !empty($data['images_url'])}}{{$data.images_url}}{{/if}}" data-validation-message="{{:MyLang('form_upload_images_message')}}" required />
|
||||
<img src="{{if !empty($data['images_url'])}}{{$data.images_url}}{{else /}}{{$attachment_host}}/static/admin/default/images/default-images.jpg{{/if}}" />
|
||||
</li>
|
||||
</ul>
|
||||
<div class="plug-file-upload-submit" data-view-tag="ul.slide-images_url-images-view">+ {{:MyLang('form_upload_images_title')}}</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="am-u-sm-6 am-padding-horizontal-0">
|
||||
<div class="am-cf">
|
||||
<div class="am-u-sm-12 am-padding-horizontal-0">
|
||||
{{include file="lib/sort" /}}
|
||||
</div>
|
||||
<div class="am-u-sm-12 am-padding-horizontal-0">
|
||||
{{include file="lib/is_enable" /}}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{{include file="lib/sort" /}}
|
||||
{{include file="lib/is_enable" /}}
|
||||
<div class="am-form-group am-form-group-refreshing am-margin-top-lg am-padding-left-0">
|
||||
<input type="hidden" name="id" {{if !empty($data)}} value="{{$data.id}}"{{/if}} />
|
||||
<div class="am-form-popup-submit">
|
||||
<input type="hidden" name="id" {{if !empty($data['id'])}} value="{{$data.id}}"{{/if}} />
|
||||
<button type="submit" class="am-btn am-btn-primary am-radius btn-loading-example am-btn-sm am-btn-block" data-am-loading="{loadingText:'{{:MyLang('processing_tips')}}'}">{{:MyLang('save_title')}}</button>
|
||||
</div>
|
||||
</form>
|
||||
@ -73,7 +93,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<!-- right content end -->
|
||||
|
||||
|
||||
<!-- footer start -->
|
||||
{{include file="public/footer" /}}
|
||||
<!-- footer end -->
|
@ -29,7 +29,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<!-- right content end -->
|
||||
|
||||
|
||||
<!-- footer start -->
|
||||
{{include file="public/footer" /}}
|
||||
<!-- footer end -->
|
@ -12,7 +12,7 @@
|
||||
<!-- 后台 -->
|
||||
<div class="am-panel am-panel-default">
|
||||
<div class="am-panel-hd">
|
||||
<h3 class="am-panel-title">后台</h3>
|
||||
<h3 class="am-panel-title">{{:MyLang('sms.base_item_admin_title')}}</h3>
|
||||
</div>
|
||||
<div class="am-panel-bd am-padding-vertical-xs">
|
||||
<div class="am-form-group">
|
||||
@ -25,7 +25,7 @@
|
||||
<!-- 前端 -->
|
||||
<div class="am-panel am-panel-default">
|
||||
<div class="am-panel-hd">
|
||||
<h3 class="am-panel-title">前端</h3>
|
||||
<h3 class="am-panel-title">{{:MyLang('sms.base_item_index_title')}}</h3>
|
||||
</div>
|
||||
<div class="am-panel-bd am-padding-vertical-xs">
|
||||
<div class="am-form-group">
|
||||
@ -58,7 +58,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<!-- right content end -->
|
||||
|
||||
|
||||
<!-- footer start -->
|
||||
{{include file="public/footer" /}}
|
||||
<!-- footer end -->
|
@ -1,13 +1,14 @@
|
||||
<ul class="am-nav am-nav-pills table-nav second-nav">
|
||||
<li {{if $nav_type eq 'index'}}class="am-active"{{/if}} data-type="index">
|
||||
<a href="{{:MyUrl('admin/sms/index', ['type'=>'index'])}}">短信设置</a>
|
||||
</li>
|
||||
<li {{if $nav_type eq 'message'}}class="am-active"{{/if}} data-type="message">
|
||||
<a href="{{:MyUrl('admin/sms/index', ['type'=>'message'])}}">消息模板</a>
|
||||
</li>
|
||||
{{if !empty($nav_data) and is_array($nav_data)}}
|
||||
{{foreach $nav_data as $v}}
|
||||
<li {{if $nav_type eq $v['type']}}class="am-active"{{/if}} data-type="{{$v.type}}">
|
||||
<a href="{{:MyUrl('admin/sms/index', ['type'=>$v['type']])}}">{{$v.name}}</a>
|
||||
</li>
|
||||
{{/foreach}}
|
||||
{{/if}}
|
||||
</ul>
|
||||
|
||||
<div class="am-alert am-alert-warning am-radius am-margin-bottom-0" data-am-alert>
|
||||
<button type="button" class="am-close">×</button>
|
||||
<p class="am-text-xs">阿里云短信管理地址 <a href="https://www.aliyun.com/acts/alicomcloud/new-discount?userCode=iub0dy6g" class="am-margin-left-sm" target="_blank">点击去阿里云购买短信 <i class="am-icon-external-link"></i></a> </p>
|
||||
<p class="am-text-xs">{{:MyLang('sms.top_tips')}} <a href="https://www.aliyun.com/acts/alicomcloud/new-discount?userCode=iub0dy6g" class="am-margin-left-sm" target="_blank">{{:MyLang('sms.top_to_aliyun_tips')}} <i class="am-icon-external-link"></i></a> </p>
|
||||
</div>
|
@ -5,23 +5,23 @@
|
||||
<div class="content">
|
||||
<div class="am-alert am-alert-warning am-radius" data-am-alert>
|
||||
<button type="button" class="am-close">×</button>
|
||||
<p class="am-text-xs">PS:非开发人员请不要随意执行任何SQL语句,操作可能导致将整个系统数据库被删除。</p>
|
||||
<p>{{:MyLang('sqlconsole.top_tips')}}</p>
|
||||
</div>
|
||||
|
||||
|
||||
{{if isset($shopxo_is_develop) and $shopxo_is_develop eq true}}
|
||||
<!-- form start -->
|
||||
<form class="am-form form-validation" action="{{:MyUrl('admin/sqlconsole/implement')}}" method="POST" request-type="ajax-fun" request-value="ViewImplementBack">
|
||||
<div class="am-form-group">
|
||||
<textarea rows="16" name="sql" class="am-radius" placeholder="SQL语句" data-validation-message="请填写需要执行的SQL语句" required></textarea>
|
||||
<textarea rows="16" name="sql" class="am-radius" placeholder="{{:MyLang('sqlconsole.form_sql_placeholder')}}" data-validation-message="{{:MyLang('sqlconsole.form_sql_message')}}" required></textarea>
|
||||
</div>
|
||||
<div class="am-form-group am-form-group-refreshing am-margin-top-lg am-padding-left-0">
|
||||
<button type="submit" class="am-btn am-btn-primary am-radius btn-loading-example am-btn-sm am-btn-block" data-am-loading="{loadingText:'{{:MyLang('processing_tips')}}'}">执行</button>
|
||||
<button type="submit" class="am-btn am-btn-primary am-radius btn-loading-example am-btn-sm am-btn-block" data-am-loading="{loadingText:'{{:MyLang('processing_tips')}}'}">{{:MyLang('execute_title')}}</button>
|
||||
</div>
|
||||
</form>
|
||||
<!-- form end -->
|
||||
{{else /}}
|
||||
<div class="am-alert">
|
||||
<p>如需要执行SQL 语句,请在 config/shopxo.php 文件中 is_develop值改为true开启开发者模式。</p>
|
||||
<p>{{:MyLang('sqlconsole.form_dev_tips')}}</p>
|
||||
</div>
|
||||
{{/if}}
|
||||
|
||||
|
@ -3,9 +3,9 @@
|
||||
<!-- right content -->
|
||||
<div class="content-right">
|
||||
<div class="content am-text-center am-margin-top-xl">
|
||||
<p>ShopXO优秀应用列表,这里云集了最资深,技术能力最强,最可信赖的ShopXO开发者,为您的插件、风格、模板定制全面护航。</p>
|
||||
<p>{{:MyLang('store.top_tips')}}</p>
|
||||
<div class="am-margin-top-xl">
|
||||
<a href="{{$store_url}}" class="am-btn am-btn-secondary am-btn-xs am-radius" target="_blank">去应用商店挑选插件 >></a>
|
||||
<a href="{{$store_url}}" class="am-btn am-btn-secondary am-btn-xs am-radius" target="_blank">{{:MyLang('store.to_store_name')}}</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -21,24 +21,24 @@
|
||||
{{$v.name}}
|
||||
<div class="am-fr am-text-right">
|
||||
{{if !empty($upgrade_info) and isset($upgrade_info[$v['theme']]) and $upgrade_info[$v['theme']]['version_new'] neq $v['ver']}}
|
||||
<a href="javascript:;" class="am-icon-refresh am-text-danger package-upgrade-event" title="更新" data-type="webtheme" data-name="{{$v.name}}" data-value="{{$v.theme}}" data-json="{{:urlencode(json_encode($upgrade_info[$v['theme']]))}}"></a>
|
||||
<a href="javascript:;" class="am-icon-refresh am-text-danger package-upgrade-event" title="{{:MyLang('update_title')}}" data-type="webtheme" data-name="{{$v.name}}" data-value="{{$v.theme}}" data-json="{{:urlencode(json_encode($upgrade_info[$v['theme']]))}}"></a>
|
||||
{{/if}}
|
||||
{{if isset($shopxo_is_develop) and $shopxo_is_develop eq true}}
|
||||
<a href="{{:MyUrl('admin/theme/download', ['id'=>$v['theme']])}}" class="am-icon-trash-o am-icon-download am-margin-left-sm" title="打包"></a>
|
||||
<a href="{{:MyUrl('admin/theme/download', ['id'=>$v['theme']])}}" class="am-icon-trash-o am-icon-download am-margin-left-sm" title="{{:MyLang('download_title')}}"></a>
|
||||
{{/if}}
|
||||
{{if $v.is_delete eq 1}}
|
||||
<a href="javascript:;" class="am-icon-trash-o submit-delete am-margin-left-sm am-text-warning" title="删除" data-url="{{:MyUrl('admin/theme/delete')}}" data-id="{{$v.theme}}"></a>
|
||||
<a href="javascript:;" class="am-icon-trash-o submit-delete am-margin-left-sm am-text-warning" title="{{:MyLang('delete_title')}}" data-url="{{:MyUrl('admin/theme/delete')}}" data-id="{{$v.theme}}"></a>
|
||||
{{/if}}
|
||||
</div>
|
||||
</h3>
|
||||
<div class="am-gallery-desc">作者:
|
||||
<div class="am-gallery-desc">{{:MyLang('theme.list_author_title')}}
|
||||
{{if empty($v['home'])}}
|
||||
{{$v.author}}
|
||||
{{else /}}
|
||||
<a href="{{$v.home}}" target="_blank">{{$v.author}}</a>
|
||||
{{/if}}
|
||||
</div>
|
||||
<div class="am-gallery-desc">适用版本:{{$v.ver}}</div>
|
||||
<div class="am-gallery-desc">{{:MyLang('theme.list_version_title')}}{{$v.ver}}</div>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
|
@ -1,13 +1,14 @@
|
||||
<ul class="am-nav am-nav-pills table-nav">
|
||||
<li {{if $view_type eq 'index'}}class="am-active"{{/if}}>
|
||||
<a href="{{:MyUrl('admin/theme/index', ['view_type'=>'index'])}}">当前主题</a>
|
||||
</li>
|
||||
<li {{if $view_type eq 'upload'}}class="am-active"{{/if}}>
|
||||
<a href="{{:MyUrl('admin/theme/index', ['view_type'=>'upload'])}}">主题安装</a>
|
||||
</li>
|
||||
{{if !empty($store_theme_url)}}
|
||||
<li class="am-fr">
|
||||
<a class="am-margin-left-sm" href="{{$store_theme_url}}" target="_blank">更多主题下载 <i class="am-icon-external-link"></i></a>
|
||||
</li>
|
||||
{{if !empty($base_nav)}}
|
||||
{{foreach $base_nav as $v}}
|
||||
<li {{if $view_type eq $v['type']}}class="am-active"{{/if}}>
|
||||
<a href="{{:MyUrl('admin/theme/index', ['view_type'=>$v['type']])}}">{{$v.name}}</a>
|
||||
</li>
|
||||
{{/foreach}}
|
||||
{{/if}}
|
||||
{{if !empty($store_theme_url)}}
|
||||
<li class="am-fr">
|
||||
<a class="am-margin-left-sm" href="{{$store_theme_url}}" target="_blank">{{:MyLang('theme.nav_store_theme_name')}} <i class="am-icon-external-link"></i></a>
|
||||
</li>
|
||||
{{/if}}
|
||||
</ul>
|
@ -6,7 +6,7 @@
|
||||
<!-- nav start -->
|
||||
{{include file="theme/nav" /}}
|
||||
<!-- nav end -->
|
||||
|
||||
|
||||
<!-- form start -->
|
||||
<form class="am-form form-validation am-margin-top-sm" action="{{:MyUrl('admin/theme/upload')}}" method="POST" request-type="ajax-url" request-value="{{:MyUrl('admin/theme/index')}}" enctype="multipart/form-data">
|
||||
<div class="am-form-group am-form-group-refreshing am-margin-bottom-0">
|
||||
@ -14,7 +14,7 @@
|
||||
<button type="button" class="am-btn am-btn-default am-btn-sm am-radius">
|
||||
<i class="am-icon-cloud-upload"></i> {{:MyLang('form_choice_images_title')}}</button>
|
||||
<input type="file" name="theme" class="file-event" data-tips-tag="#form-theme-tips" data-validation-message="{{:MyLang('form_upload_file_message')}}" accept=".zip" required />
|
||||
<span class="tips am-text-xs">上传一个zip压缩格式的主题安装包</span>
|
||||
<span class="tips am-text-xs">{{:MyLang('theme.form_item_upload_tips')}}</span>
|
||||
<div id="form-theme-tips" class="am-margin-top-xs"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -1,8 +0,0 @@
|
||||
<!-- 用户头像信息 -->
|
||||
{{if !empty($module_data)}}
|
||||
{{if !empty($module_data['avatar'])}}
|
||||
<img src="{{$module_data['avatar']}}" class="am-img-thumbnail am-radius" width="80" height="80" />
|
||||
{{else /}}
|
||||
<span class="cr-ddd">暂无头像</span>
|
||||
{{/if}}
|
||||
{{/if}}
|
@ -5,7 +5,7 @@
|
||||
<li class="am-text-truncate">{{$module_data.referrer_info.user_name_view}}</li>
|
||||
<li>
|
||||
{{if !empty($module_data['referrer_info']['username'])}}
|
||||
<a href="javascript:;" class="am-icon-user am-text-grey am-margin-right-sm" data-am-popover="{content: '账号:{{$module_data.referrer_info.username}}{{if !empty($module_data['referrer_info']['nickname'])}}<br />昵称:{{$module_data.referrer_info.nickname}}{{/if}}', trigger: 'hover focus', theme: 'sm'}"></a>
|
||||
<a href="javascript:;" class="am-icon-user am-text-grey am-margin-right-sm" data-am-popover="{content: '{{:MyLang('user_username_title')}}:{{$module_data.referrer_info.username}}{{if !empty($module_data['referrer_info']['nickname'])}}<br />{{:MyLang('user_nickname_title')}}:{{$module_data.referrer_info.nickname}}{{/if}}', trigger: 'hover focus', theme: 'sm'}"></a>
|
||||
{{/if}}
|
||||
{{if !empty($module_data['referrer_info']['mobile'])}}
|
||||
<a href="javascript:;" class="am-icon-phone-square am-text-grey am-margin-right-sm" data-am-popover="{content: '{{$module_data.referrer_info.mobile}}', trigger: 'hover focus', theme: 'sm'}"></a>
|
||||
|
@ -4,30 +4,30 @@
|
||||
<div class="content-right">
|
||||
<div class="content">
|
||||
<!-- form start -->
|
||||
<form class="am-form form-validation am-form-full-screen am-form-popup-fixed" action="{{:MyUrl('admin/user/save')}}" method="POST" request-type="ajax-url" request-value="{{:MyUrl('admin/user/index', $params)}}">
|
||||
<form class="am-form form-validation am-form-pure am-form-full-screen am-form-popup-fixed" action="{{:MyUrl('admin/user/save')}}" method="POST" request-type="ajax-url" request-value="{{:MyUrl('admin/user/index', $params)}}">
|
||||
<legend>
|
||||
<span class="am-text-default">用户{{if empty($data['id'])}}{{:MyLang('created_title')}}{{else /}}{{:MyLang('edit_title')}}{{/if}}</span>
|
||||
<span class="am-text-default">{{:MyLang('user.base_nav_title')}}{{if empty($data['id'])}}{{:MyLang('created_title')}}{{else /}}{{:MyLang('edit_title')}}{{/if}}</span>
|
||||
<a href="{{:MyUrl('admin/user/index', $params)}}" class="am-fr am-text-sm am-margin-top-sm am-icon-mail-reply"> {{:MyLang('retreat_title')}}</a>
|
||||
</legend>
|
||||
<div class="am-cf">
|
||||
<div class="am-u-sm-6 am-padding-horizontal-0">
|
||||
<div class="am-form-group">
|
||||
<label>系统类型</label>
|
||||
<input type="text" name="system_type_name" class="am-radius" placeholder="系统类型" data-validation-message="系统类型2~60字符" value="{{if empty($data['system_type'])}}default{{else /}}{{$data.system_type}}{{/if}}" />
|
||||
<label>{{:MyLang('user.form_item_system_type')}}<span class="am-form-group-label-tips">{{:MyLang('user.form_item_system_type_tips')}}</span></label>
|
||||
<input type="text" name="system_type_name" class="am-radius" placeholder="{{:MyLang('user.form_item_system_type_message')}}" data-validation-message="{{:MyLang('user.form_item_system_type_message')}}" value="{{if empty($data['system_type'])}}default{{else /}}{{$data.system_type}}{{/if}}" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="am-u-sm-6 am-padding-horizontal-0">
|
||||
<div class="am-cf">
|
||||
<div class="am-u-sm-6 am-padding-horizontal-0">
|
||||
<div class="am-form-group">
|
||||
<label>用户名</label>
|
||||
<input type="text" name="username" class="am-radius" placeholder="用户名" data-validation-message="用户名2~30个字符" value="{{if !empty($data['username'])}}{{$data.username}}{{/if}}" />
|
||||
<label>{{:MyLang('user.form_item_username')}}</label>
|
||||
<input type="text" name="username" class="am-radius" placeholder="{{:MyLang('user.form_item_username_message')}}" data-validation-message="{{:MyLang('user.form_item_username_message')}}" value="{{if !empty($data['username'])}}{{$data.username}}{{/if}}" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="am-u-sm-6 am-padding-horizontal-0">
|
||||
<div class="am-form-group">
|
||||
<label>昵称</label>
|
||||
<input type="text" name="nickname" class="am-radius" placeholder="昵称" data-validation-message="昵称最多 30 个字符" value="{{if !empty($data['nickname'])}}{{$data.nickname}}{{/if}}" />
|
||||
<label>{{:MyLang('user.form_item_nickname')}}</label>
|
||||
<input type="text" name="nickname" class="am-radius" placeholder="{{:MyLang('user.form_item_nickname_message')}}" data-validation-message="{{:MyLang('user.form_item_nickname_message')}}" value="{{if !empty($data['nickname'])}}{{$data.nickname}}{{/if}}" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@ -36,84 +36,84 @@
|
||||
<div class="am-cf">
|
||||
<div class="am-u-sm-6 am-padding-horizontal-0">
|
||||
<div class="am-form-group">
|
||||
<label>手机号码</label>
|
||||
<input type="text" name="mobile" class="am-radius" placeholder="手机号码" pattern="{{:MyConst('common_regex_mobile')}}" data-validation-message="手机号码格式错误" value="{{if !empty($data['mobile'])}}{{$data.mobile}}{{/if}}" />
|
||||
<label>{{:MyLang('user.form_item_mobile')}}</label>
|
||||
<input type="text" name="mobile" class="am-radius" placeholder="{{:MyLang('user.form_item_mobile')}}" pattern="{{:MyConst('common_regex_mobile')}}" data-validation-message="{{:MyLang('user.form_item_mobile_message')}}" value="{{if !empty($data['mobile'])}}{{$data.mobile}}{{/if}}" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="am-u-sm-6 am-padding-horizontal-0">
|
||||
<div class="am-form-group">
|
||||
<label>电子邮箱</label>
|
||||
<input type="email" name="email" class="am-radius" placeholder="电子邮箱" data-validation-message="电子邮箱格式错误" value="{{if !empty($data['email'])}}{{$data.email}}{{/if}}" />
|
||||
<label>{{:MyLang('user.form_item_email')}}</label>
|
||||
<input type="email" name="email" class="am-radius" placeholder="{{:MyLang('user.form_item_email')}}" data-validation-message="{{:MyLang('user.form_item_email_message')}}" value="{{if !empty($data['email'])}}{{$data.email}}{{/if}}" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="am-cf">
|
||||
<div class="am-u-sm-6 am-padding-horizontal-0">
|
||||
<div class="am-form-group">
|
||||
<label>支付宝openid</label>
|
||||
<input type="text" name="alipay_openid" class="am-radius" placeholder="支付宝openid" data-validation-message="请填写支付宝openid" value="{{if !empty($data['alipay_openid'])}}{{$data.alipay_openid}}{{/if}}" />
|
||||
<label>{{:MyLang('user.form_item_alipay_openid')}}</label>
|
||||
<input type="text" name="alipay_openid" class="am-radius" placeholder="{{:MyLang('user.form_item_alipay_openid')}}" data-validation-message="{{:MyLang('user.form_item_alipay_openid_message')}}" value="{{if !empty($data['alipay_openid'])}}{{$data.alipay_openid}}{{/if}}" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="am-u-sm-6 am-padding-horizontal-0">
|
||||
<div class="am-form-group">
|
||||
<label>百度openid</label>
|
||||
<input type="text" name="baidu_openid" class="am-radius" placeholder="百度openid" data-validation-message="请填写百度openid" value="{{if !empty($data['baidu_openid'])}}{{$data.baidu_openid}}{{/if}}" />
|
||||
<label>{{:MyLang('user.form_item_baidu_openid')}}</label>
|
||||
<input type="text" name="baidu_openid" class="am-radius" placeholder="{{:MyLang('user.form_item_baidu_openid')}}" data-validation-message="{{:MyLang('user.form_item_baidu_openid_message')}}" value="{{if !empty($data['baidu_openid'])}}{{$data.baidu_openid}}{{/if}}" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="am-cf">
|
||||
<div class="am-u-sm-6 am-padding-horizontal-0">
|
||||
<div class="am-form-group">
|
||||
<label>头条openid</label>
|
||||
<input type="text" name="toutiao_openid" class="am-radius" placeholder="头条openid" data-validation-message="请填写头条openid" value="{{if !empty($data['toutiao_openid'])}}{{$data.toutiao_openid}}{{/if}}" />
|
||||
<label>{{:MyLang('user.form_item_toutiao_openid')}}</label>
|
||||
<input type="text" name="toutiao_openid" class="am-radius" placeholder="{{:MyLang('user.form_item_toutiao_openid')}}" data-validation-message="{{:MyLang('user.form_item_toutiao_openid_message')}}" value="{{if !empty($data['toutiao_openid'])}}{{$data.toutiao_openid}}{{/if}}" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="am-u-sm-6 am-padding-horizontal-0">
|
||||
<div class="am-form-group">
|
||||
<label>头条unionid</label>
|
||||
<input type="text" name="toutiao_unionid" class="am-radius" placeholder="头条unionid" data-validation-message="请填写头条unionid" value="{{if !empty($data['toutiao_unionid'])}}{{$data.toutiao_unionid}}{{/if}}" />
|
||||
<label>{{:MyLang('user.form_item_toutiao_unionid')}}</label>
|
||||
<input type="text" name="toutiao_unionid" class="am-radius" placeholder="{{:MyLang('user.form_item_toutiao_unionid')}}" data-validation-message="{{:MyLang('user.form_item_toutiao_unionid_message')}}" value="{{if !empty($data['toutiao_unionid'])}}{{$data.toutiao_unionid}}{{/if}}" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="am-cf">
|
||||
<div class="am-u-sm-6 am-padding-horizontal-0">
|
||||
<div class="am-form-group">
|
||||
<label>QQopenid</label>
|
||||
<input type="text" name="qq_openid" class="am-radius" placeholder="QQopenid" data-validation-message="请填写QQopenid" value="{{if !empty($data['qq_openid'])}}{{$data.qq_openid}}{{/if}}" />
|
||||
<label>{{:MyLang('user.form_item_qq_openid')}}</label>
|
||||
<input type="text" name="qq_openid" class="am-radius" placeholder="{{:MyLang('user.form_item_qq_openid')}}" data-validation-message="{{:MyLang('user.form_item_qq_openid_message')}}" value="{{if !empty($data['qq_openid'])}}{{$data.qq_openid}}{{/if}}" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="am-u-sm-6 am-padding-horizontal-0">
|
||||
<div class="am-form-group">
|
||||
<label>QQunionid</label>
|
||||
<input type="text" name="qq_unionid" class="am-radius" placeholder="QQunionid" data-validation-message="请填写QQunionid" value="{{if !empty($data['qq_unionid'])}}{{$data.qq_unionid}}{{/if}}" />
|
||||
<label>{{:MyLang('user.form_item_qq_unionid')}}</label>
|
||||
<input type="text" name="qq_unionid" class="am-radius" placeholder="{{:MyLang('user.form_item_qq_unionid')}}" data-validation-message="{{:MyLang('user.form_item_qq_unionid_message')}}" value="{{if !empty($data['qq_unionid'])}}{{$data.qq_unionid}}{{/if}}" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="am-cf">
|
||||
<div class="am-u-sm-6 am-padding-horizontal-0">
|
||||
<div class="am-form-group">
|
||||
<label>微信openid</label>
|
||||
<input type="text" name="weixin_openid" class="am-radius" placeholder="微信openid" data-validation-message="请填写微信openid" value="{{if !empty($data['weixin_openid'])}}{{$data.weixin_openid}}{{/if}}" />
|
||||
<label>{{:MyLang('user.form_item_weixin_openid')}}</label>
|
||||
<input type="text" name="weixin_openid" class="am-radius" placeholder="{{:MyLang('user.form_item_weixin_openid')}}" data-validation-message="{{:MyLang('user.form_item_weixin_openid_message')}}" value="{{if !empty($data['weixin_openid'])}}{{$data.weixin_openid}}{{/if}}" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="am-u-sm-6 am-padding-horizontal-0">
|
||||
<div class="am-form-group">
|
||||
<label>微信unionid</label>
|
||||
<input type="text" name="weixin_unionid" class="am-radius" placeholder="微信unionid" data-validation-message="请填写微信unionid" value="{{if !empty($data['weixin_unionid'])}}{{$data.weixin_unionid}}{{/if}}" />
|
||||
<label>{{:MyLang('user.form_item_weixin_unionid')}}</label>
|
||||
<input type="text" name="weixin_unionid" class="am-radius" placeholder="{{:MyLang('user.form_item_weixin_unionid')}}" data-validation-message="{{:MyLang('user.form_item_weixin_unionid_message')}}" value="{{if !empty($data['weixin_unionid'])}}{{$data.weixin_unionid}}{{/if}}" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="am-cf">
|
||||
<div class="am-u-sm-6 am-padding-horizontal-0">
|
||||
<div class="am-form-group">
|
||||
<label>微信webopenid</label>
|
||||
<input type="text" name="weixin_web_openid" class="am-radius" placeholder="微信webopenid" data-validation-message="请填写微信webopenid" value="{{if !empty($data['weixin_web_openid'])}}{{$data.weixin_web_openid}}{{/if}}" />
|
||||
<label>{{:MyLang('user.form_item_web_weixin_openid')}}</label>
|
||||
<input type="text" name="weixin_web_openid" class="am-radius" placeholder="{{:MyLang('user.form_item_web_weixin_openid')}}" data-validation-message="{{:MyLang('user.form_item_web_weixin_openid_message')}}" value="{{if !empty($data['weixin_web_openid'])}}{{$data.weixin_web_openid}}{{/if}}" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="am-u-sm-6 am-padding-horizontal-0">
|
||||
<div class="am-form-group">
|
||||
<label>快手openid</label>
|
||||
<input type="text" name="kuaishou_openid" class="am-radius" placeholder="快手openid" data-validation-message="请填写快手openid" value="{{if !empty($data['kuaishou_openid'])}}{{$data.kuaishou_openid}}{{/if}}" />
|
||||
<label>{{:MyLang('user.form_item_kuaishou_openid')}}</label>
|
||||
<input type="text" name="kuaishou_openid" class="am-radius" placeholder="{{:MyLang('user.form_item_kuaishou_openid')}}" data-validation-message="{{:MyLang('user.form_item_kuaishou_openid_message')}}" value="{{if !empty($data['kuaishou_openid'])}}{{$data.kuaishou_openid}}{{/if}}" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@ -121,26 +121,26 @@
|
||||
<div class="am-cf">
|
||||
<div class="am-u-sm-3 am-padding-horizontal-0">
|
||||
<div class="am-form-group">
|
||||
<label>所在省</label>
|
||||
<input type="text" placeholder="所在省" name="province" data-validation-message="所在省最多60个字符" class="am-radius" value="{{if !empty($data['province'])}}{{$data.province}}{{/if}}" />
|
||||
<label>{{:MyLang('user.form_item_province')}}</label>
|
||||
<input type="text" placeholder="{{:MyLang('user.form_item_province')}}" name="province" data-validation-message="{{:MyLang('user.form_item_province_message')}}" class="am-radius" value="{{if !empty($data['province'])}}{{$data.province}}{{/if}}" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="am-u-sm-3 am-padding-horizontal-0">
|
||||
<div class="am-form-group">
|
||||
<label>所在市</label>
|
||||
<input type="text" placeholder="所在市" name="city" data-validation-message="所在市最多60个字符" class="am-radius" value="{{if !empty($data['city'])}}{{$data.city}}{{/if}}" />
|
||||
<label>{{:MyLang('user.form_item_city')}}</label>
|
||||
<input type="text" placeholder="{{:MyLang('user.form_item_city')}}" name="city" data-validation-message="{{:MyLang('user.form_item_city_message')}}" class="am-radius" value="{{if !empty($data['city'])}}{{$data.city}}{{/if}}" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="am-u-sm-3 am-padding-horizontal-0">
|
||||
<div class="am-form-group">
|
||||
<label>所在区/县</label>
|
||||
<input type="text" placeholder="所在区/县" name="county" data-validation-message="所在区/县最多60个字符" class="am-radius" value="{{if !empty($data['county'])}}{{$data.county}}{{/if}}" />
|
||||
<label>{{:MyLang('user.form_item_county')}}</label>
|
||||
<input type="text" placeholder="{{:MyLang('user.form_item_county')}}" name="county" data-validation-message="{{:MyLang('user.form_item_county_message')}}" class="am-radius" value="{{if !empty($data['county'])}}{{$data.county}}{{/if}}" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="am-u-sm-3 am-padding-horizontal-0">
|
||||
<div class="am-form-group">
|
||||
<label>详细地址</label>
|
||||
<input type="text" placeholder="详细地址" name="address" data-validation-message="详细地址2~60个字符" class="am-radius" value="{{if !empty($data['address'])}}{{$data.address}}{{/if}}" />
|
||||
<label>{{:MyLang('user.form_item_address')}}</label>
|
||||
<input type="text" placeholder="{{:MyLang('user.form_item_address')}}" name="address" data-validation-message="{{:MyLang('user.form_item_address_message')}}" class="am-radius" value="{{if !empty($data['address'])}}{{$data.address}}{{/if}}" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@ -148,14 +148,14 @@
|
||||
<div class="am-cf">
|
||||
<div class="am-u-sm-6 am-padding-horizontal-0">
|
||||
<div class="am-form-group">
|
||||
<label>有效积分</label>
|
||||
<input type="number" placeholder="有效积分" name="integral" min="0" data-validation-message="请输入有效积分" class="am-radius" value="{{if !empty($data['integral'])}}{{$data.integral}}{{/if}}" />
|
||||
<label>{{:MyLang('user.form_item_integral')}}</label>
|
||||
<input type="number" placeholder="{{:MyLang('user.form_item_integral')}}" name="integral" min="0" data-validation-message="{{:MyLang('user.form_item_integral_message')}}" class="am-radius" value="{{if !empty($data['integral'])}}{{$data.integral}}{{/if}}" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="am-u-sm-6 am-padding-horizontal-0">
|
||||
<div class="am-form-group">
|
||||
<label>锁定积分</label>
|
||||
<input type="number" placeholder="锁定积分" name="locking_integral" min="0" data-validation-message="请输入锁定积分" class="am-radius" value="{{if !empty($data['locking_integral'])}}{{$data.locking_integral}}{{/if}}" />
|
||||
<label>{{:MyLang('user.form_item_locking_integral')}}</label>
|
||||
<input type="number" placeholder="{{:MyLang('user.form_item_locking_integral')}}" name="locking_integral" min="0" data-validation-message="{{:MyLang('user.form_item_locking_integral_message')}}" class="am-radius" value="{{if !empty($data['locking_integral'])}}{{$data.locking_integral}}{{/if}}" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@ -163,14 +163,14 @@
|
||||
<div class="am-cf">
|
||||
<div class="am-u-sm-6 am-padding-horizontal-0">
|
||||
<div class="am-form-group">
|
||||
<label>生日</label>
|
||||
<input type="text" name="birthday" class="am-radius Wdate" placeholder="生日" pattern="{{:MyConst('common_regex_date')}}" data-validation-message="生日格式有误" value="{{if !empty($data['birthday'])}}{{$data.birthday}}{{/if}}" onclick="WdatePicker({firstDayOfWeek:1,dateFmt:'yyyy-MM-dd'})" />
|
||||
<label>{{:MyLang('user.form_item_birthday')}}</label>
|
||||
<input type="text" name="birthday" class="am-radius Wdate" placeholder="{{:MyLang('user.form_item_birthday')}}" pattern="{{:MyConst('common_regex_date')}}" data-validation-message="{{:MyLang('user.form_item_birthday_message')}}" value="{{if !empty($data['birthday'])}}{{$data.birthday}}{{/if}}" onclick="WdatePicker({firstDayOfWeek:1,dateFmt:'yyyy-MM-dd'})" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="am-u-sm-6 am-padding-horizontal-0">
|
||||
<div class="am-form-group">
|
||||
<label>邀请用户ID</label>
|
||||
<input type="number" placeholder="邀请用户ID" name="referrer" data-validation-message="请输入邀请用户ID" min="0" class="am-radius" value="{{if !empty($data['referrer'])}}{{$data.referrer}}{{/if}}" />
|
||||
<label>{{:MyLang('user.form_item_referrer')}}</label>
|
||||
<input type="number" placeholder="{{:MyLang('user.form_item_referrer')}}" name="referrer" data-validation-message="{{:MyLang('user.form_item_referrer_message')}}" min="0" class="am-radius" value="{{if !empty($data['referrer'])}}{{$data.referrer}}{{/if}}" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@ -181,8 +181,8 @@
|
||||
</div>
|
||||
<div class="am-u-sm-6 am-padding-horizontal-0">
|
||||
<div class="am-form-group">
|
||||
<label>登录密码</label>
|
||||
<input type="text" placeholder="登录密码" name="pwd" pattern="{{:MyConst('common_regex_pwd')}}" data-validation-message="登录密码格式 6~18 个字符之间" class="am-radius" value="" />
|
||||
<label>{{:MyLang('user.form_item_pwd')}}<span class="am-form-group-label-tips">{{:MyLang('user.form_item_pwd_tips')}}</span></label>
|
||||
<input type="text" placeholder="{{:MyLang('user.form_item_pwd')}}" name="pwd" pattern="{{:MyConst('common_regex_pwd')}}" data-validation-message="{{:MyLang('user.form_item_pwd_message')}}" class="am-radius" value="" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@ -218,7 +218,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<!-- right content end -->
|
||||
|
||||
|
||||
<!-- footer start -->
|
||||
{{include file="public/footer" /}}
|
||||
<!-- footer end -->
|
@ -1,8 +1,12 @@
|
||||
<!-- 身份证信息 -->
|
||||
{{if !empty($module_data)}}
|
||||
<p>姓名:{{$module_data.idcard_name}}</p>
|
||||
<p>号码:{{$module_data.idcard_number}}</p>
|
||||
{{if !empty($module_data['idcard_name'])}}
|
||||
<p>{{:MyLang('useraddress.detail_user_address_idcard_name')}}:{{$module_data.idcard_name}}</p>
|
||||
{{/if}}
|
||||
{{if !empty($module_data['idcard_number'])}}
|
||||
<p>{{:MyLang('useraddress.detail_user_address_idcard_number')}}:{{$module_data.idcard_number}}</p>
|
||||
{{/if}}
|
||||
{{if !empty($module_data['idcard_front']) or !empty($module_data['idcard_back'])}}
|
||||
<p class="am-nbfc"><span class="am-fl">照片:</span>{{if !empty($module_data['idcard_front'])}}<a href="{{$module_data.idcard_front}}" target="_blank" class="am-fl"><img width="35" height="27" src="{{$module_data.idcard_front}}" alt="身份证人像面" class="am-img-thumbnail am-radius am-block" /></a>{{/if}} {{if !empty($module_data['idcard_back'])}}<a href="{{$module_data.idcard_back}}" target="_blank" class="am-fl am-margin-left-xs"><img width="35" height="27" src="{{$module_data.idcard_back}}" alt="身份证人像面" class="am-img-thumbnail am-radius am-block" /></a>{{/if}}</p>
|
||||
<p class="am-nbfc"><span class="am-fl">{{:MyLang('useraddress.detail_user_address_idcard_pic')}}:</span>{{if !empty($module_data['idcard_front'])}}<a href="{{$module_data.idcard_front}}" target="_blank" class="am-fl"><img width="35" height="27" src="{{$module_data.idcard_front}}" class="am-img-thumbnail am-radius am-block" /></a>{{/if}} {{if !empty($module_data['idcard_back'])}}<a href="{{$module_data.idcard_back}}" target="_blank" class="am-fl am-margin-left-xs"><img width="35" height="27" src="{{$module_data.idcard_back}}" class="am-img-thumbnail am-radius am-block" /></a>{{/if}}</p>
|
||||
{{/if}}
|
||||
{{/if}}
|
@ -1,6 +1,6 @@
|
||||
<!-- 是否默认 -->
|
||||
{{if isset($module_data['is_default']) and $module_data['is_default'] eq 1}}
|
||||
<span class="am-badge am-badge-success-plain am-round">默认</span>
|
||||
<span class="am-badge am-badge-success-plain am-round">{{:MyLang('default_title')}}</span>
|
||||
{{else /}}
|
||||
<span class="am-badge am-badge-default-plain am-round">否</span>
|
||||
<span class="am-badge am-badge-default-plain am-round">{{:MyLang('no_title')}}</span>
|
||||
{{/if}}
|
@ -1,12 +1,10 @@
|
||||
<!-- 经纬度 -->
|
||||
{{if !empty($module_data['lng'])}}
|
||||
<p><span>经度:</span>{{$module_data.lng}}</p>
|
||||
{{/if}}
|
||||
{{if !empty($module_data['lat'])}}
|
||||
<p class="am-margin-top-xs"><span>纬度:</span>{{$module_data.lat}}</p>
|
||||
{{/if}}
|
||||
{{if isset($module_data['lng']) and isset($module_data['lat']) and $module_data['lng'] neq 0 and $module_data['lat'] neq 0}}
|
||||
<div class="am-margin-top-xs">
|
||||
<button type="button" class="am-btn am-btn-success am-btn-xs am-radius am-icon-map-marker am-padding-xs submit-map-popup" data-lng="{{$module_data.lng}}" data-lat="{{$module_data.lat}}"> 查看位置</button>
|
||||
</div>
|
||||
<button type="button" class="am-btn am-btn-success am-btn-xs am-radius am-icon-map-marker am-padding-xs am-fr submit-map-popup" data-lng="{{$module_data.lng}}" data-lat="{{$module_data.lat}}"> {{:MyLang('view_title')}}</button>
|
||||
{{if !empty($module_data['lng'])}}
|
||||
<p><span>{{:MyLang('lan_title')}}:</span>{{$module_data.lng}}</p>
|
||||
{{/if}}
|
||||
{{if !empty($module_data['lat'])}}
|
||||
<p><span>{{:MyLang('lat_title')}}:</span>{{$module_data.lat}}</p>
|
||||
{{/if}}
|
||||
{{/if}}
|
@ -6,53 +6,53 @@
|
||||
<!-- form start -->
|
||||
<form class="am-form form-validation am-form-full-screen am-form-popup-fixed" action="{{:MyUrl('admin/useraddress/save')}}" method="POST" request-type="ajax-url" request-value="{{:MyUrl('admin/useraddress/index', $params)}}">
|
||||
<legend>
|
||||
<span class="am-text-default">用户地址{{if empty($data['id'])}}{{:MyLang('created_title')}}{{else /}}{{:MyLang('edit_title')}}{{/if}}</span>
|
||||
<span class="am-text-default">{{:MyLang('useraddress.base_nav_title')}}{{if empty($data['id'])}}{{:MyLang('created_title')}}{{else /}}{{:MyLang('edit_title')}}{{/if}}</span>
|
||||
<a href="{{:MyUrl('admin/useraddress/index', $params)}}" class="am-fr am-text-sm am-margin-top-sm am-icon-mail-reply"> {{:MyLang('retreat_title')}}</a>
|
||||
</legend>
|
||||
{{if !empty($data) and !empty($data['user'])}}
|
||||
<div class="am-alert am-alert-secondary am-nbfc am-margin-top-0">
|
||||
<img src="{{$data.user.avatar}}" alt="{{$data.user.user_name_view}}" class="am-img-thumbnail am-radius am-align-left am-margin-right-xs am-margin-bottom-0" width="75" height="75" />
|
||||
<ul class="user-base">
|
||||
<li>{{:MyLang('user_username_title')}}:{{if empty($data['user']['username'])}}<span class="am-text-grey">无</span>{{else /}}{{$data.user.username}}{{/if}}</li>
|
||||
<li>{{:MyLang('user_nickname_title')}}:{{if empty($data['user']['nickname'])}}<span class="am-text-grey">无</span>{{else /}}{{$data.user.nickname}}{{/if}}</li>
|
||||
<li>{{:MyLang('user_mobile_title')}}:{{if empty($data['user']['mobile'])}}<span class="am-text-grey">无</span>{{else /}}{{$data.user.mobile}}{{/if}}</li>
|
||||
<li>{{:MyLang('user_email_title')}}:{{if empty($data['user']['email'])}}<span class="am-text-grey">无</span>{{else /}}{{$data.user.email}}{{/if}}</li>
|
||||
<li>{{:MyLang('user_username_title')}}:{{if empty($data['user']['username'])}}<span class="am-text-grey">{{:MyLang('no_filled_tips')}}</span>{{else /}}{{$data.user.username}}{{/if}}</li>
|
||||
<li>{{:MyLang('user_nickname_title')}}:{{if empty($data['user']['nickname'])}}<span class="am-text-grey">{{:MyLang('no_filled_tips')}}</span>{{else /}}{{$data.user.nickname}}{{/if}}</li>
|
||||
<li>{{:MyLang('user_mobile_title')}}:{{if empty($data['user']['mobile'])}}<span class="am-text-grey">{{:MyLang('no_filled_tips')}}</span>{{else /}}{{$data.user.mobile}}{{/if}}</li>
|
||||
<li>{{:MyLang('user_email_title')}}:{{if empty($data['user']['email'])}}<span class="am-text-grey">{{:MyLang('no_filled_tips')}}</span>{{else /}}{{$data.user.email}}{{/if}}</li>
|
||||
</ul>
|
||||
</div>
|
||||
{{/if}}
|
||||
|
||||
<div class="am-form-group">
|
||||
<label>用户id<span class="am-form-group-label-tips-must">*</span></label>
|
||||
<input type="number" name="user_id" placeholder="用户id" min="0" data-validation-message="请填写用户id" class="am-radius" {{if !empty($data['user_id'])}} value="{{$data.user_id}}"{{/if}} required />
|
||||
<label>{{:MyLang('useraddress.form_item_user_id')}}<span class="am-form-group-label-tips-must">*</span></label>
|
||||
<input type="number" name="user_id" placeholder="{{:MyLang('useraddress.form_item_user_id')}}" min="0" data-validation-message="{{:MyLang('useraddress.form_item_user_id_message')}}" class="am-radius" {{if !empty($data['user_id'])}} value="{{$data.user_id}}"{{/if}} required />
|
||||
</div>
|
||||
|
||||
<div class="am-cf">
|
||||
<div class="am-u-sm-8 am-padding-horizontal-0">
|
||||
<div class="am-form-group">
|
||||
<label>姓名<span class="am-form-group-label-tips-must">*</span></label>
|
||||
<input type="text" name="name" placeholder="姓名" minlength="2" maxlength="16" data-validation-message="姓名格式 2~16 个字符之间" class="am-radius" {{if !empty($data['name'])}} value="{{$data.name}}"{{/if}} required />
|
||||
<label>{{:MyLang('useraddress.form_item_name')}}<span class="am-form-group-label-tips-must">*</span></label>
|
||||
<input type="text" name="name" placeholder="{{:MyLang('useraddress.form_item_name_message')}}" minlength="2" maxlength="16" data-validation-message="{{:MyLang('useraddress.form_item_name_message')}}" class="am-radius" {{if !empty($data['name'])}} value="{{$data.name}}"{{/if}} required />
|
||||
</div>
|
||||
</div>
|
||||
<div class="am-u-sm-4 am-padding-horizontal-0">
|
||||
<div class="am-form-group">
|
||||
<label>别名</label>
|
||||
<input type="text" name="alias" placeholder="别名" minlength="0" maxlength="16" data-validation-message="别名格式最多 16 个字符" class="am-radius" {{if !empty($data['alias'])}} value="{{$data.alias}}"{{/if}} />
|
||||
<label>{{:MyLang('useraddress.form_item_alias')}}</label>
|
||||
<input type="text" name="alias" placeholder="{{:MyLang('useraddress.form_item_alias_message')}}" minlength="0" maxlength="16" data-validation-message="{{:MyLang('useraddress.form_item_alias_message')}}" class="am-radius" {{if !empty($data['alias'])}} value="{{$data.alias}}"{{/if}} />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="am-form-group">
|
||||
<label>电话<span class="am-form-group-label-tips-must">*</span></label>
|
||||
<input type="text" name="tel" placeholder="电话" minlength="6" maxlength="30" data-validation-message="电话格式有误" class="am-radius" {{if !empty($data['tel'])}} value="{{$data.tel}}"{{/if}} required />
|
||||
<label>{{:MyLang('useraddress.form_item_tel')}}<span class="am-form-group-label-tips-must">*</span></label>
|
||||
<input type="text" name="tel" placeholder="{{:MyLang('useraddress.form_item_tel')}}" minlength="6" maxlength="30" data-validation-message="{{:MyLang('useraddress.form_item_tel_message')}}" class="am-radius" {{if !empty($data['tel'])}} value="{{$data.tel}}"{{/if}} required />
|
||||
</div>
|
||||
|
||||
{{include file="lib/region_linkage" /}}
|
||||
<div class="am-form-group">
|
||||
<label>详细地址<span class="am-form-group-label-tips-must">*</span></label>
|
||||
<label>{{:MyLang('useraddress.form_item_address')}}<span class="am-form-group-label-tips-must">*</span></label>
|
||||
<div class="am-input-group am-input-group-sm">
|
||||
<input type="hidden" name="lng" id="form-lng" {{if !empty($data['lng'])}} value="{{$data.lng}}"{{/if}} />
|
||||
<input type="hidden" name="lat" id="form-lat" {{if !empty($data['lat'])}} value="{{$data.lat}}"{{/if}} />
|
||||
<input type="text" name="address" id="form-address" placeholder="详细地址" minlength="2" maxlength="80" data-validation-message="详细地址格式 1~80 个字符之间" class="am-radius am-form-field" {{if !empty($data['address'])}} value="{{$data.address}}"{{/if}} required />
|
||||
<input type="text" name="address" id="form-address" placeholder="{{:MyLang('useraddress.form_item_address_message')}}" minlength="2" maxlength="80" data-validation-message="{{:MyLang('useraddress.form_item_address_message')}}" class="am-radius am-form-field" {{if !empty($data['address'])}} value="{{$data.address}}"{{/if}} required />
|
||||
<span class="am-input-group-btn">
|
||||
<button type="button" class="am-btn am-btn-default am-radius" id="map-location-submit">
|
||||
<i class="am-icon-map-marker"></i>
|
||||
@ -69,18 +69,18 @@
|
||||
</div>
|
||||
<div class="am-alert am-alert-secondary">
|
||||
<div class="am-form-group">
|
||||
<label>身份证姓名<span class="am-form-group-label-tips">请务必与上传的身份证件姓名保持一致</span></label>
|
||||
<input type="text" name="idcard_name" placeholder="身份证姓名" minlength="0" maxlength="16" data-validation-message="身份证姓名格式最多 16 个字符" class="am-radius" {{if !empty($data['idcard_name'])}} value="{{$data.idcard_name}}"{{/if}} />
|
||||
<label>{{:MyLang('useraddress.form_item_idcard_name')}}<span class="am-form-group-label-tips">{{:MyLang('useraddress.form_item_idcard_name_tips')}}</span></label>
|
||||
<input type="text" name="idcard_name" placeholder="{{:MyLang('useraddress.form_item_idcard_name_message')}}" minlength="0" maxlength="16" data-validation-message="{{:MyLang('useraddress.form_item_idcard_name_message')}}" class="am-radius" {{if !empty($data['idcard_name'])}} value="{{$data.idcard_name}}"{{/if}} />
|
||||
</div>
|
||||
<div class="am-form-group">
|
||||
<label>身份证号码<span class="am-form-group-label-tips">请务必与上传的身份证件号码保持一致</span></label>
|
||||
<input type="text" name="idcard_number" placeholder="身份证号码" minlength="0" maxlength="18" data-validation-message="身份证号码格式最多 18 个字符" class="am-radius" {{if !empty($data['idcard_number'])}} value="{{$data.idcard_number}}"{{/if}} />
|
||||
<label>{{:MyLang('useraddress.form_item_idcard_number')}}<span class="am-form-group-label-tips">{{:MyLang('useraddress.form_item_idcard_number_tips')}}</span></label>
|
||||
<input type="text" name="idcard_number" placeholder="{{:MyLang('useraddress.form_item_idcard_number_message')}}" minlength="0" maxlength="18" data-validation-message="{{:MyLang('useraddress.form_item_idcard_number_message')}}" class="am-radius" {{if !empty($data['idcard_number'])}} value="{{$data.idcard_number}}"{{/if}} />
|
||||
</div>
|
||||
{{if empty($data) or empty($data['user_id'])}}
|
||||
<p class="am-text-center am-text-warning am-margin-top-sm">先关联用户后再上传身份证图片</p>
|
||||
<p class="am-text-center am-text-warning am-margin-top-sm">{{:MyLang('useraddress.form_item_idcard_no_user_tips')}}</p>
|
||||
{{else /}}
|
||||
<div class="am-form-group plug-file-upload-view">
|
||||
<label>身份证照片<span class="am-form-group-label-tips">请使用身份证原件拍摄,图片要清晰</span></label>
|
||||
<label>{{:MyLang('useraddress.form_item_idcard_images')}}<span class="am-form-group-label-tips">{{:MyLang('useraddress.form_item_idcard_images_tips')}}</span></label>
|
||||
<div class="am-nbfc user-address-idcard-images">
|
||||
<div class="am-fl">
|
||||
<ul class="plug-file-upload-view images-idcard_front" data-form-name="idcard_front" data-max-number="1" data-dialog-type="images">
|
||||
@ -92,7 +92,7 @@
|
||||
<i>×</i>
|
||||
</li>
|
||||
</ul>
|
||||
<div class="plug-file-upload-submit" data-view-tag="ul.images-idcard_front">+上传人像面图片</div>
|
||||
<div class="plug-file-upload-submit" data-view-tag="ul.images-idcard_front">+ {{:MyLang('useraddress.form_item_idcard_front_button_name')}}</div>
|
||||
</div>
|
||||
<div class="am-fl am-margin-left-lg">
|
||||
<ul class="plug-file-upload-view images-idcard_back" data-form-name="idcard_back" data-max-number="1" data-dialog-type="images">
|
||||
@ -104,7 +104,7 @@
|
||||
<i>×</i>
|
||||
</li>
|
||||
</ul>
|
||||
<div class="plug-file-upload-submit" data-view-tag="ul.images-idcard_back">+上传国微面图片</div>
|
||||
<div class="plug-file-upload-submit" data-view-tag="ul.images-idcard_back">+ {{:MyLang('useraddress.form_item_idcard_back_button_name')}}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -10,9 +10,9 @@
|
||||
|
||||
<!-- 底部提示信息 -->
|
||||
{{block name="form_operate_bottom"}}
|
||||
<div class="am-alert am-alert-warning">
|
||||
<p>1. 权重数值越大代表权重越高、扣除库存按照权重依次扣除)</p>
|
||||
<p>2. 仓库仅软删除、删除后将不可用、仅数据库中保留数据)可以自行删除关联的商品数据</p>
|
||||
<p>3. 仓库停用和删除、关联的商品库存会立即释放</p>
|
||||
</div>
|
||||
{{if is_array(MyLang('warehouse.top_tips_list'))}}
|
||||
<div class="am-alert am-alert-warning">
|
||||
<p>{{:implode('</p><p>', MyLang('warehouse.top_tips_list'))}}</p>
|
||||
</div>
|
||||
{{/if}}
|
||||
{{/block}}
|
@ -1,9 +1,9 @@
|
||||
<!-- 基础信息 -->
|
||||
{{if !empty($module_data)}}
|
||||
{{if !empty($module_data['name'])}}
|
||||
<p>{{$module_data.name}}{{if isset($module_data['is_default']) and $module_data['is_default'] eq 1}}<span class="am-badge am-badge-success-plain am-round am-margin-left-xs">默认</span>{{/if}}</p>
|
||||
<p>{{$module_data.name}}{{if isset($module_data['is_default']) and $module_data['is_default'] eq 1}}<span class="am-badge am-badge-success-plain am-round am-margin-left-xs">{{:MyLang('default_title')}}</span>{{/if}}</p>
|
||||
{{/if}}
|
||||
{{if !empty($module_data['alias'])}}
|
||||
<p class="am-badge am-badge-secondary-plain am-radius">{{$module_data.alias}}</p>
|
||||
<p class="am-badge am-badge-secondary-plain am-round">{{$module_data.alias}}</p>
|
||||
{{/if}}
|
||||
{{/if}}
|
@ -1,12 +1,10 @@
|
||||
<!-- 经纬度 -->
|
||||
{{if !empty($module_data['lng'])}}
|
||||
<p><span>经度:</span>{{$module_data.lng}}</p>
|
||||
{{/if}}
|
||||
{{if !empty($module_data['lat'])}}
|
||||
<p class="am-margin-top-xs"><span>纬度:</span>{{$module_data.lat}}</p>
|
||||
{{/if}}
|
||||
{{if isset($module_data['lng']) and isset($module_data['lat']) and $module_data['lng'] neq 0 and $module_data['lat'] neq 0}}
|
||||
<div class="am-margin-top-xs">
|
||||
<button type="button" class="am-btn am-btn-success am-btn-xs am-radius am-icon-map-marker am-padding-xs submit-map-popup" data-lng="{{$module_data.lng}}" data-lat="{{$module_data.lat}}"> 查看位置</button>
|
||||
</div>
|
||||
<button type="button" class="am-btn am-btn-success am-btn-xs am-radius am-icon-map-marker am-padding-xs am-fr submit-map-popup" data-lng="{{$module_data.lng}}" data-lat="{{$module_data.lat}}"> {{:MyLang('view_title')}}</button>
|
||||
{{if !empty($module_data['lng'])}}
|
||||
<p><span>{{:MyLang('lan_title')}}:</span>{{$module_data.lng}}</p>
|
||||
{{/if}}
|
||||
{{if !empty($module_data['lat'])}}
|
||||
<p><span>{{:MyLang('lat_title')}}:</span>{{$module_data.lat}}</p>
|
||||
{{/if}}
|
||||
{{/if}}
|
@ -6,7 +6,7 @@
|
||||
<!-- form start -->
|
||||
<form class="am-form form-validation am-form-pure am-form-full-screen am-form-popup-fixed" action="{{:MyUrl('admin/warehouse/save')}}" method="POST" request-type="ajax-url" request-value="{{:MyUrl('admin/warehouse/index', $params)}}">
|
||||
<legend>
|
||||
<span class="am-text-default">仓库{{if empty($data['id'])}}{{:MyLang('created_title')}}{{else /}}{{:MyLang('edit_title')}}{{/if}}</span>
|
||||
<span class="am-text-default">{{:MyLang('warehouse.base_nav_title')}}{{if empty($data['id'])}}{{:MyLang('created_title')}}{{else /}}{{:MyLang('edit_title')}}{{/if}}</span>
|
||||
<a href="{{:MyUrl('admin/warehouse/index', $params)}}" class="am-fr am-text-sm am-margin-top-sm am-icon-mail-reply"> {{:MyLang('retreat_title')}}</a>
|
||||
</legend>
|
||||
|
||||
@ -15,14 +15,14 @@
|
||||
<div class="am-cf">
|
||||
<div class="am-u-sm-8 am-padding-horizontal-0">
|
||||
<div class="am-form-group">
|
||||
<label>名称<span class="am-form-group-label-tips-must">*</span></label>
|
||||
<input type="text" name="name" placeholder="名称" minlength="2" maxlength="30" data-validation-message="名称格式 2~30 个字符之间" class="am-radius" {{if !empty($data['name'])}} value="{{$data.name}}"{{/if}} required />
|
||||
<label>{{:MyLang('warehouse.form_item_name')}}<span class="am-form-group-label-tips-must">*</span></label>
|
||||
<input type="text" name="name" placeholder="{{:MyLang('warehouse.form_item_name_message')}}" minlength="2" maxlength="30" data-validation-message="{{:MyLang('warehouse.form_item_name_message')}}" class="am-radius" {{if !empty($data['name'])}} value="{{$data.name}}"{{/if}} required />
|
||||
</div>
|
||||
</div>
|
||||
<div class="am-u-sm-4 am-padding-horizontal-0">
|
||||
<div class="am-form-group">
|
||||
<label>别名</label>
|
||||
<input type="text" name="alias" placeholder="别名" minlength="0" maxlength="16" data-validation-message="别名格式最多 16 个字符" class="am-radius" {{if !empty($data)}} value="{{$data.alias}}"{{/if}} />
|
||||
<label>{{:MyLang('warehouse.form_item_alias')}}</label>
|
||||
<input type="text" name="alias" placeholder="{{:MyLang('warehouse.form_item_alias_message')}}" minlength="0" maxlength="16" data-validation-message="{{:MyLang('warehouse.form_item_alias_message')}}" class="am-radius" {{if !empty($data['alias'])}} value="{{$data.alias}}"{{/if}} />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@ -45,22 +45,22 @@
|
||||
<div class="am-cf">
|
||||
<div class="am-u-sm-6 am-padding-horizontal-0">
|
||||
<div class="am-form-group">
|
||||
<label>权重<span class="am-form-group-label-tips">权重数值越大代表权重越高</span></label>
|
||||
<input type="number" name="level" placeholder="权重" minlength="0" maxlength="16" data-validation-message="请输入有效权重数值" class="am-radius" {{if !empty($data)}} value="{{$data.level}}"{{/if}} />
|
||||
<label>{{:MyLang('warehouse.form_item_level')}}<span class="am-form-group-label-tips">{{:MyLang('warehouse.form_item_level_tips')}}</span></label>
|
||||
<input type="number" name="level" placeholder="{{:MyLang('warehouse.form_item_level')}}" minlength="0" maxlength="16" data-validation-message="{{:MyLang('warehouse.form_item_level_message')}}" class="am-radius" {{if !empty($data['level'])}} value="{{$data.level}}"{{/if}} />
|
||||
</div>
|
||||
</div>
|
||||
<div class="am-u-sm-6 am-padding-horizontal-0">
|
||||
<div class="am-cf">
|
||||
<div class="am-u-sm-6 am-padding-horizontal-0">
|
||||
<div class="am-form-group">
|
||||
<label>联系人<span class="am-form-group-label-tips-must">*</span></label>
|
||||
<input type="text" name="contacts_name" placeholder="联系人" minlength="2" maxlength="16" data-validation-message="联系人格式 2~16 个字符之间" class="am-radius" {{if !empty($data)}} value="{{$data.contacts_name}}"{{/if}} required />
|
||||
<label>{{:MyLang('warehouse.form_item_contacts_name')}}<span class="am-form-group-label-tips-must">*</span></label>
|
||||
<input type="text" name="contacts_name" placeholder="{{:MyLang('warehouse.form_item_contacts_name_message')}}" minlength="2" maxlength="16" data-validation-message="{{:MyLang('warehouse.form_item_contacts_name_message')}}" class="am-radius" {{if !empty($data['contacts_name'])}} value="{{$data.contacts_name}}"{{/if}} required />
|
||||
</div>
|
||||
</div>
|
||||
<div class="am-u-sm-6 am-padding-horizontal-0">
|
||||
<div class="am-form-group">
|
||||
<label>联系电话<span class="am-form-group-label-tips-must">*</span></label>
|
||||
<input type="text" name="contacts_tel" placeholder="电话" minlength="6" maxlength="30" data-validation-message="电话格式有误" class="am-radius" {{if !empty($data)}} value="{{$data.contacts_tel}}"{{/if}} required />
|
||||
<label>{{:MyLang('warehouse.form_item_contacts_tel')}}<span class="am-form-group-label-tips-must">*</span></label>
|
||||
<input type="text" name="contacts_tel" placeholder="{{:MyLang('warehouse.form_item_contacts_name')}}" minlength="6" maxlength="30" data-validation-message="{{:MyLang('warehouse.form_item_contacts_tel_message')}}" class="am-radius" {{if !empty($data['contacts_tel'])}} value="{{$data.contacts_tel}}"{{/if}} required />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@ -69,11 +69,11 @@
|
||||
|
||||
{{include file="lib/region_linkage" /}}
|
||||
<div class="am-form-group">
|
||||
<label>详细地址<span class="am-form-group-label-tips-must">*</span></label>
|
||||
<label>{{:MyLang('warehouse.form_item_address')}}<span class="am-form-group-label-tips-must">*</span></label>
|
||||
<div class="am-input-group am-input-group-sm">
|
||||
<input type="hidden" name="lng" id="form-lng" {{if !empty($data)}} value="{{$data.lng}}"{{/if}} />
|
||||
<input type="hidden" name="lat" id="form-lat" {{if !empty($data)}} value="{{$data.lat}}"{{/if}} />
|
||||
<input type="text" name="address" id="form-address" placeholder="详细地址" minlength="2" maxlength="80" data-validation-message="详细地址格式 1~80 个字符之间" class="am-radius" {{if !empty($data)}} value="{{$data.address}}"{{/if}} required />
|
||||
<input type="text" name="address" id="form-address" placeholder="{{:MyLang('warehouse.form_item_address_message')}}" minlength="1" maxlength="80" data-validation-message="{{:MyLang('warehouse.form_item_address_message')}}" class="am-radius" {{if !empty($data)}} value="{{$data.address}}"{{/if}} required />
|
||||
<span class="am-input-group-btn">
|
||||
<button type="button" class="am-btn am-btn-default am-radius" id="map-location-submit">
|
||||
<i class="am-icon-map-marker"></i>
|
||||
|
@ -5,29 +5,24 @@
|
||||
{{block name="detail_data"}}
|
||||
<!-- 父级内容 -->
|
||||
{__block__}
|
||||
|
||||
|
||||
<!-- 规格 -->
|
||||
<div class="am-panel am-panel-default">
|
||||
<div class="am-panel-hd">规格库存</div>
|
||||
<div class="am-panel-hd">{{:MyLang('warehousegoods.base_spec_inventory_title')}}</div>
|
||||
<div class="am-panel-bd">
|
||||
{{if !empty($spec)}}
|
||||
<table class="am-table am-table-striped am-table-hover form-inventory-container">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>规格</th>
|
||||
<th>库存</th>
|
||||
<th>{{:MyLang('spec_title')}}</th>
|
||||
<th>{{:MyLang('inventory_title')}}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{{foreach $spec as $v}}
|
||||
<tr>
|
||||
<td>{{$v.name}}</td>
|
||||
<td>
|
||||
{{if empty($v['inventory'])}}
|
||||
<span class="am-text-grey">无</span>
|
||||
{{else /}}
|
||||
{{$v.inventory}}
|
||||
{{/if}}
|
||||
<td>{{if !empty($v['inventory'])}}{{$v.inventory}}{{/if}}</td>
|
||||
</tr>
|
||||
{{/foreach}}
|
||||
</tbody>
|
||||
|
@ -27,7 +27,7 @@
|
||||
{{/if}}
|
||||
</div>
|
||||
<div class="am-margin-top-sm">
|
||||
<div class="spec-title number">库存</div>
|
||||
<div class="spec-title number">{{:MyLang('inventory_title')}}</div>
|
||||
<div class="inventory-number am-margin-top-sm">
|
||||
<div class="am-input-group am-input-group-sm inventory-container">
|
||||
<button class="am-input-group-label" id="min" type="button">-</button>
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
<!-- 表单顶部操作栏 -->
|
||||
{{block name="form_operate_top"}}
|
||||
<button type="button" class="am-btn am-btn-secondary am-radius am-btn-xs am-icon-plus add-goods-submit"> 添加</button>
|
||||
<button type="button" class="am-btn am-btn-secondary am-radius am-btn-xs am-icon-plus add-goods-submit"> {{:MyLang('created_title')}}</button>
|
||||
<!-- 父级内容 -->
|
||||
{__block__}
|
||||
{{/block}}
|
||||
@ -14,7 +14,7 @@
|
||||
<div class="am-popup" id="warehouse-goods-popup">
|
||||
<div class="am-popup-inner">
|
||||
<div class="am-popup-hd">
|
||||
<h4 class="am-popup-title">商品添加</h4>
|
||||
<h4 class="am-popup-title">{{:MyLang('warehousegoods.add_goods_title')}}</h4>
|
||||
<span class="am-icon-arrows-alt am-full"></span>
|
||||
<span data-am-modal-close class="am-close">×</span>
|
||||
</div>
|
||||
@ -22,8 +22,8 @@
|
||||
<form class="am-form am-padding-sm goods-add-container">
|
||||
<!-- 搜索 -->
|
||||
<div class="forth-selection-container" data-search-url="{{:MyUrl('admin/warehousegoods/goodssearch')}}">
|
||||
<select class="am-radius chosen-select forth-selection-form-warehouse" data-placeholder="仓库..." data-validation-message="请选择仓库">
|
||||
<option value="">仓库...</option>
|
||||
<select class="am-radius chosen-select forth-selection-form-warehouse" data-placeholder="{{:MyLang('warehousegoods.form_item_warehouseg_placeholder')}}" data-validation-message="{{:MyLang('warehousegoods.form_item_warehouseg_message')}}">
|
||||
<option value="">{{:MyLang('warehousegoods.form_item_warehouseg_placeholder')}}</option>
|
||||
{{if !empty($warehouse_list)}}
|
||||
{{foreach $warehouse_list as $v}}
|
||||
<option value="{{$v.id}}">{{$v.name}}</option>
|
||||
@ -54,9 +54,7 @@
|
||||
|
||||
<!-- 商品列表 -->
|
||||
<div class="am-scrollable-vertical am-margin-top-sm am-padding-bottom-xs goods-list-container" data-loading-msg="{{:MyLang('searching_tips')}}" data-add-url="{{:MyUrl('admin/warehousegoods/goodsadd')}}" data-del-url="{{:MyUrl('admin/warehousegoods/goodsdel')}}">
|
||||
<ul class="am-gallery am-avg-sm-3 am-avg-md-4 am-avg-lg-5 am-gallery-bordered">
|
||||
<div class="table-no"><i class="am-icon-warning"></i> 请搜索商品</div>
|
||||
</ul>
|
||||
<ul class="am-gallery am-avg-sm-3 am-avg-md-4 am-avg-lg-5 am-gallery-bordered"></ul>
|
||||
</div>
|
||||
|
||||
<!-- 分页 -->
|
||||
|
@ -9,7 +9,7 @@
|
||||
<table class="am-table am-table-striped am-table-hover form-inventory-container">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>规格</th>
|
||||
<th>{{:MyLang('spec_title')}}</th>
|
||||
<th>
|
||||
<span>{{:MyLang('inventory_title')}}</span>
|
||||
<!-- 批量设置 -->
|
||||
@ -17,7 +17,7 @@
|
||||
<a href="javascript:;" class="am-icon-edit am-dropdown-toggle"></a>
|
||||
<div class="am-dropdown-content">
|
||||
<div class="am-input-group am-input-group-sm">
|
||||
<input type="text" class="am-form-field" placeholder="批量设置的值" />
|
||||
<input type="text" class="am-form-field" placeholder="{{:MyLang('warehousegoods.batch_setup_inventory_placeholder')}}" />
|
||||
<span class="am-input-group-btn">
|
||||
<button type="button" class="am-btn am-btn-default inventory-all-submit">{{:MyLang('confirm_title')}}</button>
|
||||
</span>
|
||||
@ -32,7 +32,7 @@
|
||||
<tr>
|
||||
<td>{{$v.name}}</td>
|
||||
<td>
|
||||
<input type="number" name="specifications_inventory[]" value="{{if !empty($v['inventory'])}}{{$v.inventory}}{{/if}}" placeholder="库存" class="am-radius" min="0" max="100000000" pattern="^-?(?:\d+|\d{1,3}(?:,\d{3})+)?(?:\.\d+)?$" data-validation-message="库存数量 0~100000000" />
|
||||
<input type="number" name="specifications_inventory[]" value="{{if !empty($v['inventory'])}}{{$v.inventory}}{{/if}}" placeholder="{{:MyLang('inventory_title')}}" class="am-radius" min="0" max="100000000" pattern="^-?(?:\d+|\d{1,3}(?:,\d{3})+)?(?:\.\d+)?$" data-validation-message="{{:MyLang('warehousegoods.form_item_inventory_message')}}" />
|
||||
<input type="hidden" name="specifications_md5_key[]" value="{{$v.md5_key}}" />
|
||||
<input type="hidden" name="specifications_spec[]" value="{{$v.spec}}" />
|
||||
</td>
|
||||
@ -47,7 +47,7 @@
|
||||
</form>
|
||||
<!-- form end -->
|
||||
{{else /}}
|
||||
<div class="table-no"><i class="am-icon-warning"></i> 无规格数据</div>
|
||||
<div class="table-no"><i class="am-icon-warning"></i> {{:MyLang('warehousegoods.no_spec_data_tips')}}</div>
|
||||
{{/if}}
|
||||
</div>
|
||||
</div>
|
||||
|
@ -3,11 +3,10 @@
|
||||
{{if !empty($module_data['goods'])}}
|
||||
<div class="am-nbfc">
|
||||
<a href="{{$module_data.goods.goods_url}}" target="_blank">
|
||||
<img src="{{$module_data.goods.images}}" alt="{{$module_data.goods.title}}" class="am-img-thumbnail am-radius am-align-left am-margin-right-xs am-fl" width="60" height="60" />
|
||||
<img src="{{$module_data.goods.images}}" alt="{{$module_data.goods.title}}" class="am-img-thumbnail am-radius am-align-left am-margin-right-xs am-fl" width="35" height="35" />
|
||||
</a>
|
||||
<a class="am-text-top am-nowrap-initial" href="{{$module_data.goods.goods_url}}" target="_blank">{{$module_data.goods.title}}</a>
|
||||
</div>
|
||||
<p>{{$currency_symbol}}{{$module_data.goods.price}}</p>
|
||||
{{else /}}
|
||||
{{:MyLang('gods_info_abnormal_tips')}}
|
||||
{{/if}}
|
||||
|
@ -71,7 +71,7 @@ class CustomView extends Common
|
||||
return MyView();
|
||||
}
|
||||
}
|
||||
MyViewAssign('msg', MyLang('custom_view.custom_view_no_data_tips'));
|
||||
MyViewAssign('msg', MyLang('customview.custom_view_no_data_tips'));
|
||||
return MyView('public/tips_error');
|
||||
}
|
||||
}
|
||||
|
@ -52,7 +52,7 @@ class UserAddress extends Common
|
||||
// 模板数据
|
||||
$assign = [
|
||||
// 浏览器名称
|
||||
'home_seo_site_title' => SeoService::BrowserSeoTitle(MyLang('user_address.browser_seo_title'), 1),
|
||||
'home_seo_site_title' => SeoService::BrowserSeoTitle(MyLang('useraddress.browser_seo_title'), 1),
|
||||
];
|
||||
// 用户地址列表
|
||||
$data = UserAddressService::UserAddressList(['user'=>$this->user]);
|
||||
|
@ -50,7 +50,7 @@ class UserGoodsBrowse extends Common
|
||||
public function Index()
|
||||
{
|
||||
// 浏览器名称
|
||||
MyViewAssign('home_seo_site_title', SeoService::BrowserSeoTitle(MyLang('user_goods_browse.browser_seo_title'), 1));
|
||||
MyViewAssign('home_seo_site_title', SeoService::BrowserSeoTitle(MyLang('usergoodsbrowse.browser_seo_title'), 1));
|
||||
return MyView();
|
||||
}
|
||||
|
||||
|
@ -50,7 +50,7 @@ class UserGoodsFavor extends Common
|
||||
public function Index()
|
||||
{
|
||||
// 浏览器名称
|
||||
MyViewAssign('home_seo_site_title', SeoService::BrowserSeoTitle(MyLang('user_goods_favor.browser_seo_title'), 1));
|
||||
MyViewAssign('home_seo_site_title', SeoService::BrowserSeoTitle(MyLang('usergoodsfavor.browser_seo_title'), 1));
|
||||
return MyView();
|
||||
}
|
||||
|
||||
|
@ -55,7 +55,7 @@ class UserIntegral extends Common
|
||||
'user_integral_data' => IntegralService::UserIntegral($this->user['id']),
|
||||
|
||||
// 浏览器名称
|
||||
'home_seo_site_title' => SeoService::BrowserSeoTitle(MyLang('user_integral.browser_seo_title'), 1),
|
||||
'home_seo_site_title' => SeoService::BrowserSeoTitle(MyLang('userintegral.browser_seo_title'), 1),
|
||||
];
|
||||
MyViewAssign($assign);
|
||||
return MyView();
|
||||
|
@ -53,6 +53,7 @@ class OrderAftersale
|
||||
*/
|
||||
public function Run($params = [])
|
||||
{
|
||||
$lang = MyLang('orderaftersale.form_table');
|
||||
return [
|
||||
// 基础配置
|
||||
'base' => [
|
||||
@ -63,7 +64,7 @@ class OrderAftersale
|
||||
// 表单配置
|
||||
'form' => [
|
||||
[
|
||||
'label' => '基础信息',
|
||||
'label' => $lang['goods'],
|
||||
'view_type' => 'module',
|
||||
'view_key' => 'orderaftersale/module/goods',
|
||||
'grid_size' => 'lg',
|
||||
@ -74,11 +75,11 @@ class OrderAftersale
|
||||
'form_name' => 'id',
|
||||
'where_type_custom' => 'in',
|
||||
'where_value_custom' => 'WhereBaseGoodsInfo',
|
||||
'placeholder' => '请输入订单号/商品名称/型号',
|
||||
'placeholder' => $lang['goods_placeholder'],
|
||||
],
|
||||
],
|
||||
[
|
||||
'label' => '状态',
|
||||
'label' => $lang['status'],
|
||||
'view_type' => 'field',
|
||||
'view_key' => 'status',
|
||||
'view_data_key' => 'name',
|
||||
@ -95,7 +96,7 @@ class OrderAftersale
|
||||
],
|
||||
],
|
||||
[
|
||||
'label' => '申请类型',
|
||||
'label' => $lang['type'],
|
||||
'view_type' => 'field',
|
||||
'view_key' => 'type',
|
||||
'view_data_key' => 'name',
|
||||
@ -112,7 +113,7 @@ class OrderAftersale
|
||||
],
|
||||
],
|
||||
[
|
||||
'label' => '原因',
|
||||
'label' => $lang['reason'],
|
||||
'view_type' => 'field',
|
||||
'view_key' => 'reason',
|
||||
'is_sort' => 1,
|
||||
@ -122,7 +123,7 @@ class OrderAftersale
|
||||
],
|
||||
],
|
||||
[
|
||||
'label' => '退款金额(元)',
|
||||
'label' => $lang['price'],
|
||||
'view_type' => 'field',
|
||||
'view_key' => 'price',
|
||||
'is_sort' => 1,
|
||||
@ -132,7 +133,7 @@ class OrderAftersale
|
||||
],
|
||||
],
|
||||
[
|
||||
'label' => '退货数量',
|
||||
'label' => $lang['number'],
|
||||
'view_type' => 'field',
|
||||
'view_key' => 'number',
|
||||
'is_sort' => 1,
|
||||
@ -141,7 +142,7 @@ class OrderAftersale
|
||||
],
|
||||
],
|
||||
[
|
||||
'label' => '退款说明',
|
||||
'label' => $lang['msg'],
|
||||
'view_type' => 'field',
|
||||
'view_key' => 'msg',
|
||||
'grid_size' => 'sm',
|
||||
@ -152,7 +153,7 @@ class OrderAftersale
|
||||
],
|
||||
],
|
||||
[
|
||||
'label' => '退款类型',
|
||||
'label' => $lang['refundment'],
|
||||
'view_type' => 'field',
|
||||
'view_key' => 'refundment',
|
||||
'view_data_key' => 'name',
|
||||
@ -169,7 +170,7 @@ class OrderAftersale
|
||||
],
|
||||
],
|
||||
[
|
||||
'label' => '快递公司',
|
||||
'label' => $lang['express_name'],
|
||||
'view_type' => 'field',
|
||||
'view_key' => 'express_name',
|
||||
'is_sort' => 1,
|
||||
@ -179,7 +180,7 @@ class OrderAftersale
|
||||
],
|
||||
],
|
||||
[
|
||||
'label' => '快递单号',
|
||||
'label' => $lang['express_number'],
|
||||
'view_type' => 'field',
|
||||
'view_key' => 'express_number',
|
||||
'is_sort' => 1,
|
||||
@ -189,7 +190,7 @@ class OrderAftersale
|
||||
],
|
||||
],
|
||||
[
|
||||
'label' => '申请时间',
|
||||
'label' => $lang['apply_time'],
|
||||
'view_type' => 'field',
|
||||
'view_key' => 'apply_time',
|
||||
'is_sort' => 1,
|
||||
@ -199,7 +200,7 @@ class OrderAftersale
|
||||
],
|
||||
],
|
||||
[
|
||||
'label' => '确认时间',
|
||||
'label' => $lang['confirm_time'],
|
||||
'view_type' => 'field',
|
||||
'view_key' => 'confirm_time',
|
||||
'is_sort' => 1,
|
||||
@ -209,7 +210,7 @@ class OrderAftersale
|
||||
],
|
||||
],
|
||||
[
|
||||
'label' => '退货时间',
|
||||
'label' => $lang['delivery_time'],
|
||||
'view_type' => 'field',
|
||||
'view_key' => 'delivery_time',
|
||||
'is_sort' => 1,
|
||||
@ -219,7 +220,7 @@ class OrderAftersale
|
||||
],
|
||||
],
|
||||
[
|
||||
'label' => '审核时间',
|
||||
'label' => $lang['audit_time'],
|
||||
'view_type' => 'field',
|
||||
'view_key' => 'audit_time',
|
||||
'is_sort' => 1,
|
||||
@ -229,7 +230,7 @@ class OrderAftersale
|
||||
],
|
||||
],
|
||||
[
|
||||
'label' => '创建时间',
|
||||
'label' => $lang['add_time'],
|
||||
'view_type' => 'field',
|
||||
'view_key' => 'add_time',
|
||||
'is_sort' => 1,
|
||||
@ -239,7 +240,7 @@ class OrderAftersale
|
||||
],
|
||||
],
|
||||
[
|
||||
'label' => '更新时间',
|
||||
'label' => $lang['upd_time'],
|
||||
'view_type' => 'field',
|
||||
'view_key' => 'upd_time',
|
||||
'is_sort' => 1,
|
||||
|
@ -53,7 +53,7 @@ class UserGoodsBrowse
|
||||
*/
|
||||
public function Run($params = [])
|
||||
{
|
||||
$lang = MyLang('user_goods_browse.form_table');
|
||||
$lang = MyLang('usergoodsbrowse.form_table');
|
||||
return [
|
||||
// 基础配置
|
||||
'base' => [
|
||||
|
@ -53,7 +53,7 @@ class UserGoodsFavor
|
||||
*/
|
||||
public function Run($params = [])
|
||||
{
|
||||
$lang = MyLang('user_goods_favor.form_table');
|
||||
$lang = MyLang('usergoodsfavor.form_table');
|
||||
return [
|
||||
// 基础配置
|
||||
'base' => [
|
||||
|
@ -53,7 +53,7 @@ class UserIntegral
|
||||
*/
|
||||
public function Run($params = [])
|
||||
{
|
||||
$lang = MyLang('user_integral.form_table');
|
||||
$lang = MyLang('userintegral.form_table');
|
||||
return [
|
||||
// 基础配置
|
||||
'base' => [
|
||||
|
@ -169,7 +169,7 @@ return [
|
||||
],
|
||||
|
||||
// 自定义页面
|
||||
'custom_view' => [
|
||||
'customview' => [
|
||||
'custom_view_no_data_tips' => 'Page does not exist or has been deleted',
|
||||
],
|
||||
|
||||
@ -342,6 +342,26 @@ return [
|
||||
'form_item_express_number_message' => 'The format of express bill number is between 1 and 60 characters',
|
||||
'form_delivery_title' => 'Return Operate',
|
||||
'form_delivery_address_name' => 'Return Address:',
|
||||
// 动态表格
|
||||
'form_table' => [
|
||||
'goods' => 'Base Info',
|
||||
'goods_placeholder' => 'Please enter the order number/product name/model',
|
||||
'status' => 'Status',
|
||||
'type' => 'Apply Type',
|
||||
'reason' => 'Reason',
|
||||
'price' => 'Refund Amount (yuan)',
|
||||
'number' => 'Return Quantity',
|
||||
'msg' => 'Refund instructions',
|
||||
'refundment' => 'Refund Type',
|
||||
'express_name' => 'Express Company',
|
||||
'express_number' => 'Express Number',
|
||||
'apply_time' => 'Apply Time',
|
||||
'confirm_time' => 'Confirm Time',
|
||||
'delivery_time' => 'Return Time',
|
||||
'audit_time' => 'Audit Time',
|
||||
'add_time' => 'Creation Time',
|
||||
'upd_time' => 'Update Time',
|
||||
],
|
||||
],
|
||||
|
||||
// 用户
|
||||
@ -412,7 +432,7 @@ return [
|
||||
],
|
||||
|
||||
// 用户地址
|
||||
'user_address' => [
|
||||
'useraddress' => [
|
||||
'browser_seo_title' => 'My Address',
|
||||
// 表单
|
||||
'form_item_name' => 'Full Name',
|
||||
@ -436,7 +456,7 @@ return [
|
||||
],
|
||||
|
||||
// 用户足迹
|
||||
'user_goods_browse' => [
|
||||
'usergoodsbrowse' => [
|
||||
'browser_seo_title' => 'My Browse',
|
||||
// 动态表格统计数据
|
||||
'form_table' => [
|
||||
@ -450,7 +470,7 @@ return [
|
||||
],
|
||||
|
||||
// 用户商品收藏
|
||||
'user_goods_favor' => [
|
||||
'usergoodsfavor' => [
|
||||
'browser_seo_title' => 'Goods Favor',
|
||||
// 动态表格统计数据
|
||||
'form_table' => [
|
||||
@ -464,7 +484,7 @@ return [
|
||||
],
|
||||
|
||||
// 用户积分
|
||||
'user_integral' => [
|
||||
'userintegral' => [
|
||||
'browser_seo_title' => 'My Integral',
|
||||
// 页面
|
||||
'base_normal_title' => 'Normal Availability',
|
||||
|
@ -169,7 +169,7 @@ return [
|
||||
],
|
||||
|
||||
// 自定义页面
|
||||
'custom_view' => [
|
||||
'customview' => [
|
||||
'custom_view_no_data_tips' => '页面不存在或已删除',
|
||||
],
|
||||
|
||||
@ -342,6 +342,26 @@ return [
|
||||
'form_item_express_number_message' => '快递单号格式1~60个字符之间',
|
||||
'form_delivery_title' => '退货操作',
|
||||
'form_delivery_address_name' => '退货地址:',
|
||||
// 动态表格
|
||||
'form_table' => [
|
||||
'goods' => '基础信息',
|
||||
'goods_placeholder' => '请输入订单号/商品名称/型号',
|
||||
'status' => '状态',
|
||||
'type' => '申请类型',
|
||||
'reason' => '原因',
|
||||
'price' => '退款金额(元)',
|
||||
'number' => '退货数量',
|
||||
'msg' => '退款说明',
|
||||
'refundment' => '退款类型',
|
||||
'express_name' => '快递公司',
|
||||
'express_number' => '快递单号',
|
||||
'apply_time' => '申请时间',
|
||||
'confirm_time' => '确认时间',
|
||||
'delivery_time' => '退货时间',
|
||||
'audit_time' => '审核时间',
|
||||
'add_time' => '创建时间',
|
||||
'upd_time' => '更新时间',
|
||||
],
|
||||
],
|
||||
|
||||
// 用户
|
||||
@ -412,7 +432,7 @@ return [
|
||||
],
|
||||
|
||||
// 用户地址
|
||||
'user_address' => [
|
||||
'useraddress' => [
|
||||
'browser_seo_title' => '我的地址',
|
||||
// 表单
|
||||
'form_item_name' => '姓名',
|
||||
@ -436,7 +456,7 @@ return [
|
||||
],
|
||||
|
||||
// 用户足迹
|
||||
'user_goods_browse' => [
|
||||
'usergoodsbrowse' => [
|
||||
'browser_seo_title' => '我的足迹',
|
||||
// 动态表格统计数据
|
||||
'form_table' => [
|
||||
@ -459,12 +479,12 @@ return [
|
||||
],
|
||||
|
||||
// 用户商品收藏
|
||||
'user_goods_favor' => [
|
||||
'usergoodsfavor' => [
|
||||
'browser_seo_title' => '商品收藏',
|
||||
],
|
||||
|
||||
// 用户积分
|
||||
'user_integral' => [
|
||||
'userintegral' => [
|
||||
'browser_seo_title' => '我的积分',
|
||||
// 页面
|
||||
'base_normal_title' => '正常可用',
|
||||
|
@ -7,31 +7,31 @@
|
||||
<div class="am-cf">
|
||||
<div class="am-u-sm-8 am-padding-horizontal-0">
|
||||
<div class="am-form-group">
|
||||
<label>{{:MyLang('user_address.form_item_name')}}<span class="am-form-group-label-tips-must">*</span></label>
|
||||
<input type="text" name="name" placeholder="{{:MyLang('user_address.form_item_name_message')}}" minlength="2" maxlength="16" data-validation-message="{{:MyLang('user_address.form_item_name_message')}}" class="am-radius" {{if !empty($data['name'])}} value="{{$data.name}}"{{/if}} required />
|
||||
<label>{{:MyLang('useraddress.form_item_name')}}<span class="am-form-group-label-tips-must">*</span></label>
|
||||
<input type="text" name="name" placeholder="{{:MyLang('useraddress.form_item_name_message')}}" minlength="2" maxlength="16" data-validation-message="{{:MyLang('useraddress.form_item_name_message')}}" class="am-radius" {{if !empty($data['name'])}} value="{{$data.name}}"{{/if}} required />
|
||||
</div>
|
||||
</div>
|
||||
<div class="am-u-sm-4 am-padding-horizontal-0">
|
||||
<div class="am-form-group">
|
||||
<label>{{:MyLang('user_address.form_item_alias')}}</label>
|
||||
<input type="text" name="alias" placeholder="{{:MyLang('user_address.form_item_alias_message')}}" minlength="0" maxlength="16" data-validation-message="{{:MyLang('user_address.form_item_alias_message')}}" class="am-radius" {{if !empty($data['alias'])}} value="{{$data.alias}}"{{/if}} />
|
||||
<label>{{:MyLang('useraddress.form_item_alias')}}</label>
|
||||
<input type="text" name="alias" placeholder="{{:MyLang('useraddress.form_item_alias_message')}}" minlength="0" maxlength="16" data-validation-message="{{:MyLang('useraddress.form_item_alias_message')}}" class="am-radius" {{if !empty($data['alias'])}} value="{{$data.alias}}"{{/if}} />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="am-form-group">
|
||||
<label>{{:MyLang('user_address.form_item_tel')}}<span class="am-form-group-label-tips-must">*</span></label>
|
||||
<input type="text" name="tel" placeholder="{{:MyLang('user_address.form_item_tel')}}" minlength="6" maxlength="30" data-validation-message="{{:MyLang('user_address.form_item_tel_message')}}" class="am-radius" {{if !empty($data['tel'])}} value="{{$data.tel}}"{{/if}} required />
|
||||
<label>{{:MyLang('useraddress.form_item_tel')}}<span class="am-form-group-label-tips-must">*</span></label>
|
||||
<input type="text" name="tel" placeholder="{{:MyLang('useraddress.form_item_tel')}}" minlength="6" maxlength="30" data-validation-message="{{:MyLang('useraddress.form_item_tel_message')}}" class="am-radius" {{if !empty($data['tel'])}} value="{{$data.tel}}"{{/if}} required />
|
||||
</div>
|
||||
|
||||
{{include file="lib/region_linkage" /}}
|
||||
<div class="am-form-group">
|
||||
<label>{{:MyLang('user_address.form_item_address')}}<span class="am-form-group-label-tips-must">*</span></label>
|
||||
<label>{{:MyLang('useraddress.form_item_address')}}<span class="am-form-group-label-tips-must">*</span></label>
|
||||
{{if MyC('home_user_address_map_status') eq 1}}
|
||||
<div class="am-input-group am-input-group-sm">
|
||||
<input type="hidden" name="lng" id="form-lng" {{if !empty($data['lng'])}} value="{{$data.lng}}"{{/if}} />
|
||||
<input type="hidden" name="lat" id="form-lat" {{if !empty($data['lat'])}} value="{{$data.lat}}"{{/if}} />
|
||||
<input type="text" name="address" id="form-address" placeholder="{{:MyLang('user_address.form_item_address_message')}}" minlength="2" maxlength="80" data-validation-message="{{:MyLang('user_address.form_item_address_message')}}" class="am-radius am-form-field" {{if !empty($data['address'])}} value="{{$data.address}}"{{/if}} required />
|
||||
<input type="text" name="address" id="form-address" placeholder="{{:MyLang('useraddress.form_item_address_message')}}" minlength="2" maxlength="80" data-validation-message="{{:MyLang('useraddress.form_item_address_message')}}" class="am-radius am-form-field" {{if !empty($data['address'])}} value="{{$data.address}}"{{/if}} required />
|
||||
<span class="am-input-group-btn">
|
||||
<button type="button" class="am-btn am-btn-default am-radius" id="map-location-submit">
|
||||
<i class="am-icon-map-marker"></i>
|
||||
@ -41,7 +41,7 @@
|
||||
</div>
|
||||
<div id="map" data-level="17" class="am-margin-top-xs"></div>
|
||||
{{else /}}
|
||||
<input type="text" name="address" id="form-address" placeholder="{{:MyLang('user_address.form_item_address_message')}}" minlength="2" maxlength="80" data-validation-message="{{:MyLang('user_address.form_item_address_message')}}" class="am-radius" {{if !empty($data['address'])}} value="{{$data.address}}"{{/if}} required />
|
||||
<input type="text" name="address" id="form-address" placeholder="{{:MyLang('useraddress.form_item_address_message')}}" minlength="2" maxlength="80" data-validation-message="{{:MyLang('useraddress.form_item_address_message')}}" class="am-radius" {{if !empty($data['address'])}} value="{{$data.address}}"{{/if}} required />
|
||||
{{/if}}
|
||||
</div>
|
||||
|
||||
@ -52,15 +52,15 @@
|
||||
{{if MyC('home_user_address_idcard_status') eq 1}}
|
||||
<div class="am-alert am-alert-secondary">
|
||||
<div class="am-form-group">
|
||||
<label>{{:MyLang('user_address.form_item_idcard_name')}}<span class="am-form-group-label-tips">{{:MyLang('user_address.form_item_idcard_name_tips')}}</span></label>
|
||||
<input type="text" name="idcard_name" placeholder="{{:MyLang('user_address.form_item_idcard_name')}}" minlength="0" maxlength="16" data-validation-message="{{:MyLang('user_address.form_item_idcard_name_message')}}" class="am-radius" {{if !empty($data['idcard_name'])}} value="{{$data.idcard_name}}"{{/if}} />
|
||||
<label>{{:MyLang('useraddress.form_item_idcard_name')}}<span class="am-form-group-label-tips">{{:MyLang('useraddress.form_item_idcard_name_tips')}}</span></label>
|
||||
<input type="text" name="idcard_name" placeholder="{{:MyLang('useraddress.form_item_idcard_name')}}" minlength="0" maxlength="16" data-validation-message="{{:MyLang('useraddress.form_item_idcard_name_message')}}" class="am-radius" {{if !empty($data['idcard_name'])}} value="{{$data.idcard_name}}"{{/if}} />
|
||||
</div>
|
||||
<div class="am-form-group">
|
||||
<label>{{:MyLang('user_address.form_item_idcard_number')}}<span class="am-form-group-label-tips">{{:MyLang('user_address.form_item_idcard_number_tips')}}</span></label>
|
||||
<input type="text" name="idcard_number" placeholder="{{:MyLang('user_address.form_item_idcard_number')}}" minlength="0" maxlength="18" data-validation-message="{{:MyLang('user_address.form_item_idcard_number_message')}}" class="am-radius" {{if !empty($data['idcard_number'])}} value="{{$data.idcard_number}}"{{/if}} />
|
||||
<label>{{:MyLang('useraddress.form_item_idcard_number')}}<span class="am-form-group-label-tips">{{:MyLang('useraddress.form_item_idcard_number_tips')}}</span></label>
|
||||
<input type="text" name="idcard_number" placeholder="{{:MyLang('useraddress.form_item_idcard_number')}}" minlength="0" maxlength="18" data-validation-message="{{:MyLang('useraddress.form_item_idcard_number_message')}}" class="am-radius" {{if !empty($data['idcard_number'])}} value="{{$data.idcard_number}}"{{/if}} />
|
||||
</div>
|
||||
<div class="am-form-group plug-file-upload-view">
|
||||
<label>{{:MyLang('user_address.form_item_idcard_images')}}<span class="am-form-group-label-tips">{{:MyLang('user_address.form_item_idcard_images_tips')}}</span></label>
|
||||
<label>{{:MyLang('useraddress.form_item_idcard_images')}}<span class="am-form-group-label-tips">{{:MyLang('useraddress.form_item_idcard_images_tips')}}</span></label>
|
||||
<div class="am-nbfc user-address-idcard-images">
|
||||
<div class="am-fl">
|
||||
<ul class="plug-file-upload-view images-idcard_front" data-form-name="idcard_front" data-max-number="1" data-dialog-type="images">
|
||||
@ -72,7 +72,7 @@
|
||||
<i>×</i>
|
||||
</li>
|
||||
</ul>
|
||||
<div class="plug-file-upload-submit" data-view-tag="ul.images-idcard_front">+{{:MyLang('user_address.form_item_idcard_front_button_name')}}</div>
|
||||
<div class="plug-file-upload-submit" data-view-tag="ul.images-idcard_front">+{{:MyLang('useraddress.form_item_idcard_front_button_name')}}</div>
|
||||
</div>
|
||||
<div class="am-fl am-margin-left-lg">
|
||||
<ul class="plug-file-upload-view images-idcard_back" data-form-name="idcard_back" data-max-number="1" data-dialog-type="images">
|
||||
@ -84,7 +84,7 @@
|
||||
<i>×</i>
|
||||
</li>
|
||||
</ul>
|
||||
<div class="plug-file-upload-submit" data-view-tag="ul.images-idcard_back">+{{:MyLang('user_address.form_item_idcard_back_button_name')}}</div>
|
||||
<div class="plug-file-upload-submit" data-view-tag="ul.images-idcard_back">+{{:MyLang('useraddress.form_item_idcard_back_button_name')}}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -5,16 +5,16 @@
|
||||
{{block name="form_navigation"}}
|
||||
<div class="am-alert am-alert-secondary" data-am-alert>
|
||||
<div class="available">
|
||||
<span>{{:MyLang('user_integral.base_normal_title')}}</span>
|
||||
<span>{{:MyLang('userintegral.base_normal_title')}}</span>
|
||||
<span class="panel-value">{{$user_integral_data.integral}}</span>
|
||||
<em>{{:MyLang('user_integral.base_integral_unit')}}</em>
|
||||
<span class="panel-tips">{{:MyLang('user_integral.base_normal_tips')}}</span>
|
||||
<em>{{:MyLang('userintegral.base_integral_unit')}}</em>
|
||||
<span class="panel-tips">{{:MyLang('userintegral.base_normal_tips')}}</span>
|
||||
</div>
|
||||
<div class="locking">
|
||||
<span>{{:MyLang('user_integral.base_locking_title')}}</span>
|
||||
<span>{{:MyLang('userintegral.base_locking_title')}}</span>
|
||||
<span class="panel-value">{{$user_integral_data.locking_integral}}</span>
|
||||
<em>{{:MyLang('user_integral.base_integral_unit')}}</em>
|
||||
<span class="panel-tips">{{:MyLang('user_integral.base_locking_tips')}}</span>
|
||||
<em>{{:MyLang('userintegral.base_integral_unit')}}</em>
|
||||
<span class="panel-tips">{{:MyLang('userintegral.base_locking_tips')}}</span>
|
||||
</div>
|
||||
</div>
|
||||
{{/block}}
|
@ -26,6 +26,8 @@ return [
|
||||
'operate_params_error' => 'Incorrect operation parameters',
|
||||
'not_operate_error' => 'No related operation',
|
||||
'not_data_error' => 'No relevant data',
|
||||
'confirm_name' => 'Confirm',
|
||||
'cancel_name' => 'Cancel',
|
||||
'select_reverse_name' => 'Cancel',
|
||||
'select_all_name' => 'All',
|
||||
'loading_tips' => 'Loading...',
|
||||
@ -197,6 +199,7 @@ return [
|
||||
'cancel_title' => 'Cancel',
|
||||
'search_title' => 'Search',
|
||||
'query_title' => 'Query',
|
||||
'execute_title' => 'Execute',
|
||||
'setup_title' => 'Setup',
|
||||
'save_title' => 'Save',
|
||||
'edit_title' => 'Edit',
|
||||
@ -330,6 +333,8 @@ return [
|
||||
'images_title' => 'Images',
|
||||
'text_title' => 'Text',
|
||||
'loading_title' => 'Loading',
|
||||
'lan_title' => 'Longitude',
|
||||
'lat_title' => 'Latitude',
|
||||
// 商品基础相关
|
||||
'goods_name' => 'Goods Name',
|
||||
'goods_stop_sale_title' => 'Stop Sale',
|
||||
|
@ -26,6 +26,8 @@ return [
|
||||
'operate_params_error' => '操作参数有误',
|
||||
'not_operate_error' => '没有相关操作',
|
||||
'not_data_error' => '没有相关数据',
|
||||
'confirm_name' => '确认',
|
||||
'cancel_name' => '取消',
|
||||
'select_reverse_name' => '反选',
|
||||
'select_all_name' => '全选',
|
||||
'loading_tips' => '加载中...',
|
||||
@ -198,6 +200,7 @@ return [
|
||||
'cancel_title' => '取消',
|
||||
'search_title' => '搜索',
|
||||
'query_title' => '查询',
|
||||
'execute_title' => '执行',
|
||||
'setup_title' => '设置',
|
||||
'save_title' => '保存',
|
||||
'edit_title' => '编辑',
|
||||
@ -331,6 +334,8 @@ return [
|
||||
'images_title' => '图片',
|
||||
'text_title' => '文本',
|
||||
'loading_title' => '加载',
|
||||
'lan_title' => '经度',
|
||||
'lat_title' => '纬度',
|
||||
// 商品基础相关
|
||||
'goods_name' => '商品名称',
|
||||
'goods_stop_sale_title' => '暂停销售',
|
||||
|
@ -221,19 +221,14 @@ class AdminPowerService
|
||||
// 缓存没数据则从数据库重新读取
|
||||
if((($role_id > 0 || $admin_id == 1) && (empty($admin_left_menu) || empty($admin_power))) || $is_refresh || MyEnv('app_debug'))
|
||||
{
|
||||
// 获取一级数据
|
||||
if($admin_id == 1 || $role_id == 1)
|
||||
{
|
||||
$field = 'id,name,control,action,url,is_show,icon';
|
||||
$admin_left_menu = Db::name('Power')->where(array('pid' => 0))->field($field)->order('sort')->select()->toArray();
|
||||
} else {
|
||||
$field = 'p.id,p.name,p.control,p.action,p.url,p.is_show,p.icon';
|
||||
$admin_left_menu = Db::name('Power')->alias('p')->join('role_power rp', 'p.id=rp.power_id')->where(array('rp.role_id' => $role_id, 'p.pid' => 0))->field($field)->order('p.sort')->select()->toArray();
|
||||
}
|
||||
|
||||
// 有数据,则处理子级数据
|
||||
// 获取一级数据、有数据,则处理子级数据
|
||||
$admin_left_menu = self::AdminPowerMenuData($admin_id, $role_id);
|
||||
if(!empty($admin_left_menu))
|
||||
{
|
||||
// 语言数据
|
||||
$lang = MyLang('admin_power_menu_list');
|
||||
$temp_lang = [];
|
||||
|
||||
// 菜单权限
|
||||
foreach($admin_left_menu as $k=>$v)
|
||||
{
|
||||
@ -241,24 +236,25 @@ class AdminPowerService
|
||||
if(!empty($v['control']) && !empty($v['action']))
|
||||
{
|
||||
// 权限
|
||||
$admin_power[$v['id']] = strtolower($v['control'].'_'.$v['action']);
|
||||
$key = strtolower($v['control'].'_'.$v['action']);
|
||||
$admin_power[$v['id']] = $key;
|
||||
|
||||
// url、存在自定义url则不覆盖
|
||||
if(empty($v['url']))
|
||||
{
|
||||
$admin_left_menu[$k]['url'] = MyUrl('admin/'.strtolower($v['control']).'/'.strtolower($v['action']));
|
||||
}
|
||||
|
||||
// 语言处理
|
||||
if(!empty($lang) && is_array($lang) && array_key_exists($key, $lang))
|
||||
{
|
||||
$temp_lang = $lang[$key];
|
||||
$admin_left_menu[$k]['name'] = $temp_lang['name'];
|
||||
}
|
||||
}
|
||||
|
||||
// 获取子权限
|
||||
if(($admin_id == 1 || $role_id == 1) && !empty($v['id']))
|
||||
{
|
||||
$items = Db::name('Power')->where(['pid'=>intval($v['id'])])->field($field)->order('sort')->select()->toArray();
|
||||
} else {
|
||||
$items = Db::name('Power')->alias('p')->join('role_power rp', 'p.id=rp.power_id')->where(['rp.role_id'=>$role_id, 'p.pid'=>intval($v['id'])])->field($field)->order('p.sort')->select()->toArray();
|
||||
}
|
||||
|
||||
// 权限列表
|
||||
$items = self::AdminPowerMenuData($admin_id, $role_id, $v['id']);
|
||||
$is_show_parent = isset($v['is_show']) ? $v['is_show'] : 0;
|
||||
if(!empty($items))
|
||||
{
|
||||
@ -268,13 +264,20 @@ class AdminPowerService
|
||||
if(!empty($vs['control']) && !empty($vs['action']))
|
||||
{
|
||||
// 权限
|
||||
$admin_power[$vs['id']] = strtolower($vs['control'].'_'.$vs['action']);
|
||||
$key = strtolower($vs['control'].'_'.$vs['action']);
|
||||
$admin_power[$vs['id']] = $key;
|
||||
|
||||
// url、存在自定义url则不覆盖
|
||||
if(empty($vs['url']))
|
||||
{
|
||||
$items[$ks]['url'] = MyUrl('admin/'.strtolower($vs['control']).'/'.strtolower($vs['action']));
|
||||
}
|
||||
|
||||
// 语言处理
|
||||
if(!empty($temp_lang['item']) && is_array($temp_lang['item']) && array_key_exists($key, $temp_lang['item']))
|
||||
{
|
||||
$items[$ks]['name'] = $temp_lang['item'][$key];
|
||||
}
|
||||
}
|
||||
|
||||
// 是否显示视图
|
||||
@ -333,5 +336,29 @@ class AdminPowerService
|
||||
'admin_plugins' => $admin_plugins,
|
||||
];
|
||||
}
|
||||
|
||||
/**
|
||||
* 权限菜单读取
|
||||
* @author Devil
|
||||
* @blog http://gong.gg/
|
||||
* @version 1.0.0
|
||||
* @date 2023-02-01
|
||||
* @desc description
|
||||
* @param [int] $admin_id [管理员id]
|
||||
* @param [int] $role_id [角色id]
|
||||
* @param [int] $pid [父id]
|
||||
*/
|
||||
public static function AdminPowerMenuData($admin_id, $role_id, $pid = 0)
|
||||
{
|
||||
if($admin_id == 1 || $role_id == 1)
|
||||
{
|
||||
$field = 'id,name,control,action,url,is_show,icon';
|
||||
$data = Db::name('Power')->where(['pid' => $pid])->field($field)->order('sort')->select()->toArray();
|
||||
} else {
|
||||
$field = 'p.id,p.name,p.control,p.action,p.url,p.is_show,p.icon';
|
||||
$data = Db::name('Power')->alias('p')->join('role_power rp', 'p.id=rp.power_id')->where(['rp.role_id' => $role_id, 'p.pid' => $pid])->field($field)->order('p.sort')->select()->toArray();
|
||||
}
|
||||
return $data;
|
||||
}
|
||||
}
|
||||
?>
|
@ -144,7 +144,7 @@ class AppCenterNavService
|
||||
$data = [
|
||||
'name' => $params['name'],
|
||||
'platform' => $params['platform'],
|
||||
'event_type' => isset($params['event_type']) ? intval($params['event_type']) : -1,
|
||||
'event_type' => (isset($params['event_type']) && $params['event_type'] != '') ? intval($params['event_type']) : -1,
|
||||
'event_value' => $params['event_value'],
|
||||
'images_url' => $attachment['data']['images_url'],
|
||||
'desc' => empty($params['desc']) ? '' : $params['desc'],
|
||||
|
@ -138,7 +138,7 @@ class AppHomeNavService
|
||||
$data = [
|
||||
'name' => $params['name'],
|
||||
'platform' => $params['platform'],
|
||||
'event_type' => isset($params['event_type']) ? intval($params['event_type']) : -1,
|
||||
'event_type' => (isset($params['event_type']) && $params['event_type'] != '') ? intval($params['event_type']) : -1,
|
||||
'event_value' => $params['event_value'],
|
||||
'images_url' => $attachment['data']['images_url'],
|
||||
'bg_color' => isset($params['bg_color']) ? $params['bg_color'] : '',
|
||||
|
@ -602,9 +602,66 @@ class DesignService
|
||||
return DataReturn('压缩包打开失败['.$resource.']', -11);
|
||||
}
|
||||
|
||||
// 文件处理
|
||||
// 配置信息
|
||||
$config = [];
|
||||
$data_id = 0;
|
||||
for($i=0; $i<$zip->numFiles; $i++)
|
||||
{
|
||||
$file = $zip->getNameIndex($i);
|
||||
if(stripos($file, 'config.json') !== false)
|
||||
{
|
||||
$stream = $zip->getStream($file);
|
||||
if($stream === false)
|
||||
{
|
||||
$zip->close();
|
||||
return DataReturn('配置信息读取失败', -1);
|
||||
}
|
||||
|
||||
// 获取配置信息并解析
|
||||
$file_content = stream_get_contents($stream);
|
||||
$config = empty($file_content) ? [] : json_decode($file_content, true);
|
||||
if(empty($config) || empty($config['data_id']) || empty($config['name']))
|
||||
{
|
||||
$zip->close();
|
||||
return DataReturn('配置信息为空或有误', -1);
|
||||
}
|
||||
|
||||
// 数据添加
|
||||
$data = [
|
||||
'name' => $config['name'],
|
||||
'is_header' => (isset($config['is_header']) && $config['is_header'] == 1) ? 1 : 0,
|
||||
'is_footer' => (isset($config['is_footer']) && $config['is_footer'] == 1) ? 1 : 0,
|
||||
'add_time' => time(),
|
||||
];
|
||||
$data_id = Db::name('Design')->insertGetId($data);
|
||||
if($data_id <= 0)
|
||||
{
|
||||
$zip->close();
|
||||
return DataReturn('数据添加失败', -1);
|
||||
}
|
||||
// 更新配置信息和logo
|
||||
if(!empty($config['config']) || !empty($config['logo']))
|
||||
{
|
||||
$upd_data = [
|
||||
'logo' => empty($config['logo']) ? '' : str_replace($config['data_id'], $data_id, $config['logo']),
|
||||
'config' => empty($config['config']) ? '' : str_replace($config['data_id'], $data_id, json_encode($config['config'], JSON_UNESCAPED_UNICODE)),
|
||||
'upd_time' => time(),
|
||||
];
|
||||
if(!Db::name('Design')->where(['id'=>$data_id])->update($upd_data))
|
||||
{
|
||||
$zip->close();
|
||||
return DataReturn('数据更新失败', -1);
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
if(empty($config) || empty($data_id))
|
||||
{
|
||||
return DataReturn('配置文件处理失败', -1);
|
||||
}
|
||||
|
||||
// 文件处理
|
||||
$success = 0;
|
||||
for($i=0; $i<$zip->numFiles; $i++)
|
||||
{
|
||||
@ -616,88 +673,34 @@ class DesignService
|
||||
{
|
||||
// 去除第一个目录(为原始数据的id)
|
||||
$temp_file = substr($file, strpos($file, '/')+1);
|
||||
if(empty($temp_file) || in_array($temp_file, ['static/', 'static/upload/']))
|
||||
if(empty($temp_file) || in_array($temp_file, ['static/', 'static/upload/', 'config.json']))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
// 是否配置文件
|
||||
if($temp_file == 'config.json')
|
||||
// 截取文件路径
|
||||
$new_file = ROOT.'public'.DS.str_replace($config['data_id'], $data_id, $temp_file);
|
||||
$file_path = substr($new_file, 0, strrpos($new_file, '/'));
|
||||
|
||||
// 路径不存在则创建
|
||||
\base\FileUtil::CreateDir($file_path);
|
||||
|
||||
// 如果不是目录则写入文件
|
||||
if(!is_dir($new_file))
|
||||
{
|
||||
// 读取这个文件
|
||||
$stream = $zip->getStream($file);
|
||||
if($stream === false)
|
||||
if($stream !== false)
|
||||
{
|
||||
$zip->close();
|
||||
return DataReturn('配置信息读取失败', -1);
|
||||
}
|
||||
|
||||
// 获取配置信息并解析
|
||||
$file_content = stream_get_contents($stream);
|
||||
$config = empty($file_content) ? [] : json_decode($file_content, true);
|
||||
if(empty($config) || empty($config['data_id']) || empty($config['name']))
|
||||
{
|
||||
$zip->close();
|
||||
return DataReturn('配置信息为空或有误', -1);
|
||||
}
|
||||
|
||||
// 数据添加
|
||||
$data = [
|
||||
'name' => $config['name'],
|
||||
'is_header' => (isset($config['is_header']) && $config['is_header'] == 1) ? 1 : 0,
|
||||
'is_footer' => (isset($config['is_footer']) && $config['is_footer'] == 1) ? 1 : 0,
|
||||
'add_time' => time(),
|
||||
];
|
||||
$data_id = Db::name('Design')->insertGetId($data);
|
||||
if($data_id <= 0)
|
||||
{
|
||||
$zip->close();
|
||||
return DataReturn('数据添加失败', -1);
|
||||
}
|
||||
// 更新配置信息和logo
|
||||
if(!empty($config['config']) || !empty($config['logo']))
|
||||
{
|
||||
$upd_data = [
|
||||
'logo' => empty($config['logo']) ? '' : str_replace($config['data_id'], $data_id, $config['logo']),
|
||||
'config' => empty($config['config']) ? '' : str_replace($config['data_id'], $data_id, json_encode($config['config'], JSON_UNESCAPED_UNICODE)),
|
||||
'upd_time' => time(),
|
||||
];
|
||||
if(!Db::name('Design')->where(['id'=>$data_id])->update($upd_data))
|
||||
$file_content = stream_get_contents($stream);
|
||||
if($file_content !== false)
|
||||
{
|
||||
$zip->close();
|
||||
return DataReturn('数据更新失败', -1);
|
||||
}
|
||||
}
|
||||
$success++;
|
||||
continue;
|
||||
}
|
||||
|
||||
// 配置信息和新的数据id必须存在
|
||||
if(!empty($config) && !empty($data_id))
|
||||
{
|
||||
// 截取文件路径
|
||||
$new_file = ROOT.'public'.DS.str_replace($config['data_id'], $data_id, $temp_file);
|
||||
$file_path = substr($new_file, 0, strrpos($new_file, '/'));
|
||||
|
||||
// 路径不存在则创建
|
||||
\base\FileUtil::CreateDir($file_path);
|
||||
|
||||
// 如果不是目录则写入文件
|
||||
if(!is_dir($new_file))
|
||||
{
|
||||
// 读取这个文件
|
||||
$stream = $zip->getStream($file);
|
||||
if($stream !== false)
|
||||
{
|
||||
$file_content = stream_get_contents($stream);
|
||||
if($file_content !== false)
|
||||
if(file_put_contents($new_file, $file_content))
|
||||
{
|
||||
if(file_put_contents($new_file, $file_content))
|
||||
{
|
||||
$success++;
|
||||
}
|
||||
$success++;
|
||||
}
|
||||
fclose($stream);
|
||||
}
|
||||
fclose($stream);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -139,7 +139,7 @@ class QuickNavService
|
||||
$data = [
|
||||
'name' => $params['name'],
|
||||
'platform' => $params['platform'],
|
||||
'event_type' => isset($params['event_type']) ? intval($params['event_type']) : -1,
|
||||
'event_type' => (isset($params['event_type']) && $params['event_type'] != '') ? intval($params['event_type']) : -1,
|
||||
'event_value' => $params['event_value'],
|
||||
'images_url' => $attachment['data']['images_url'],
|
||||
'bg_color' => isset($params['bg_color']) ? $params['bg_color'] : '',
|
||||
|
@ -147,7 +147,7 @@ class SlideService
|
||||
$data = [
|
||||
'name' => $params['name'],
|
||||
'platform' => $params['platform'],
|
||||
'event_type' => isset($params['event_type']) ? intval($params['event_type']) : -1,
|
||||
'event_type' => (isset($params['event_type']) && $params['event_type'] != '') ? intval($params['event_type']) : -1,
|
||||
'event_value' => $params['event_value'],
|
||||
'images_url' => $attachment['data']['images_url'],
|
||||
'bg_color' => isset($params['bg_color']) ? $params['bg_color'] : '',
|
||||
|
@ -345,7 +345,7 @@ class UserService
|
||||
'key_name' => 'address',
|
||||
'checked_data' => '80',
|
||||
'is_checked' => 1,
|
||||
'error_msg' => '地址格式最多 80 个字符之间',
|
||||
'error_msg' => '地址格式最多80个字符',
|
||||
],
|
||||
[
|
||||
'checked_type' => 'fun',
|
||||
|
@ -61,7 +61,8 @@
|
||||
* 数据列表规格展示
|
||||
*/
|
||||
.spec-inventory-list {
|
||||
height: 100px;
|
||||
max-height: 75px;
|
||||
height: auto;
|
||||
}
|
||||
.spec-inventory-list ul li .spec-name {
|
||||
width: calc(100% - 75px);
|
||||
|
@ -14,6 +14,7 @@ $(function()
|
||||
// 关闭刷新页面
|
||||
window.location.reload();
|
||||
});
|
||||
$popup.find('.search-submit').trigger('click');
|
||||
});
|
||||
|
||||
// 搜索商品
|
||||
|
@ -17,7 +17,7 @@ dialog.alert = function(options) {
|
||||
options.class = options.class || '';
|
||||
options.title = options.title || null;
|
||||
options.content = options.content || '提示内容';
|
||||
options.confirmText = options.confirmText || '确定';
|
||||
options.confirmText = options.confirmText || window['lang_confirm_name'] || '确定';
|
||||
options.isClose = options.isClose || false;
|
||||
options.isBtn = options.isBtn || false;
|
||||
options.config = options.config || {};
|
||||
@ -67,10 +67,10 @@ dialog.alert = function(options) {
|
||||
|
||||
dialog.confirm = function(options) {
|
||||
options = options || {};
|
||||
options.title = options.title || '提示';
|
||||
options.title = options.title || window['lang_operate_params_error'] || '提示';
|
||||
options.content = options.content || '提示内容';
|
||||
options.cancelText = options.cancelText || '取消';
|
||||
options.confirmText = options.confirmText || '确定';
|
||||
options.cancelText = options.cancelText || window['lang_cancel_name'] || '取消';
|
||||
options.confirmText = options.confirmText || window['lang_confirm_name'] || '确定';
|
||||
options.onConfirm = options.onConfirm || function() {};
|
||||
options.onCancel = options.onCancel || function() {};
|
||||
|
||||
@ -80,7 +80,7 @@ dialog.confirm = function(options) {
|
||||
html.push('<div class="am-modal-hd">' + options.title + '</div>');
|
||||
html.push('<div class="am-modal-bd"><div class="am-padding-horizontal-xl am-padding-vertical-xs">' + options.content + '</div></div>');
|
||||
html.push('<div class="am-modal-footer">');
|
||||
html.push('<span class="am-modal-btn" data-am-modal-cancel>'+options.cancelText+'</span>');
|
||||
html.push('<span class="am-modal-btn am-text-danger" data-am-modal-cancel>'+options.cancelText+'</span>');
|
||||
html.push('<span class="am-modal-btn" data-am-modal-confirm>'+options.confirmText+'</span>');
|
||||
html.push('</div>');
|
||||
html.push('</div>');
|
||||
@ -107,7 +107,7 @@ dialog.loading = function(options) {
|
||||
$('#my-modal-loading').modal('close');
|
||||
} else {
|
||||
options = options || {};
|
||||
options.title = options.title || '正在载入...';
|
||||
options.title = options.title || window['lang_loading_tips'] || '正在载入...';
|
||||
|
||||
if($('#my-modal-loading').length > 0)
|
||||
{
|
||||
@ -134,8 +134,8 @@ dialog.loading = function(options) {
|
||||
|
||||
dialog.actions = function(options) {
|
||||
options = options || {};
|
||||
options.title = options.title || '您想整咋样?';
|
||||
options.cancelText = options.cancelText || '取消';
|
||||
options.title = options.title || window['lang_operate_params_error'] || '您想整咋样?';
|
||||
options.cancelText = options.cancelText || window['lang_cancel_name'] || '取消';
|
||||
options.items = options.items || [];
|
||||
var html = [];
|
||||
html.push('<div class="am-modal-actions">');
|
||||
|
Loading…
Reference in New Issue
Block a user