Commit 259389d3 by 宋毅

tj

parent 834bba20
...@@ -6,7 +6,6 @@ var glob = require("glob"); ...@@ -6,7 +6,6 @@ var glob = require("glob");
class DbFactory{ class DbFactory{
constructor(){ constructor(){
const dbConfig=settings.database(); const dbConfig=settings.database();
const dbConfighb=settings.databasehb();
this.db=new Sequelize(dbConfig.dbname, this.db=new Sequelize(dbConfig.dbname,
dbConfig.user, dbConfig.user,
dbConfig.password, dbConfig.password,
...@@ -19,8 +18,6 @@ class DbFactory{ ...@@ -19,8 +18,6 @@ class DbFactory{
async initModels(){ async initModels(){
var self=this; var self=this;
var modelpath=path.normalize(path.join(__dirname, '../..'))+"/models/"; var modelpath=path.normalize(path.join(__dirname, '../..'))+"/models/";
console.log("modelpath=====================================================");
console.log(modelpath);
var models=glob.sync(modelpath+"/**/*.js"); var models=glob.sync(modelpath+"/**/*.js");
console.log(models.length); console.log(models.length);
models.forEach(function(m){ models.forEach(function(m){
...@@ -77,12 +74,6 @@ class DbFactory{ ...@@ -77,12 +74,6 @@ class DbFactory{
} }
return this.db; return this.db;
} }
getConhb(){
var that=this;
if(settings.env=="dev"){
}
return this.dbhb;
}
} }
module.exports=DbFactory; module.exports=DbFactory;
// const dbf=new DbFactory(); // const dbf=new DbFactory();
......
var path = require('path'); var path = require('path');
var ENVINPUT = {
DB_HOST: process.env.DB_HOST,
DB_PORT: process.env.DB_PORT,
DB_USER: process.env.DB_USER,
DB_PWD: process.env.DB_PWD,
DB_NAME: process.env.ZC_CHANNEL_WEB_DB_NAME,
REDIS_HOST: process.env.REDIS_HOST,
REDIS_PORT: process.env.REDIS_PORT,
REDIS_PWD: process.env.REDIS_PWD,
REDIS_DB: process.env.ZC_CHANNEL_WEB_REDIS_DB,
APP_ENV: process.env.APP_ENV ? process.env.APP_ENV : "dev"
};
var settings = { var settings = {
env:"dev", env: ENVINPUT.APP_ENV,
appKey:"bfe73612fa024822941e3e1ecd9a06e1", appKey: "bfe73612fa024822941e3e1ecd9a06e1",
paasKey:"wx76a324c5d201d1a4", paasKey: "wx76a324c5d201d1a4",
secret:"1671ab5405fa49c8b5dd0b0c55c279b8", secret: "1671ab5405fa49c8b5dd0b0c55c279b8",
salt: "%iatpD1gcxz7iF#B", salt: "%iatpD1gcxz7iF#B",
basepath : path.normalize(path.join(__dirname, '../..')), basepath: path.normalize(path.join(__dirname, '../..')),
port : process.env.NODE_PORT || 3004, port: process.env.NODE_PORT || 3004,
channelApiUrl:function(){ channelApiUrl: function () {
if(this.env=="dev"){ if (this.env == "dev") {
return "http://zcchannel.apps.com:3003"; return "http://zcchannel.apps.com:3003";
}else { } else {
return "http://192.168.18.95:3001"; return "http://192.168.18.95:3001";
} }
}, },
paasUrl:function(){ paasUrl: function () {
if(this.env=="dev"){ if (this.env == "dev") {
return "http://p.apps.com:3001/"; return "http://p.apps.com:3001/";
}else { } else {
return "http://www.telecredit.cn/"; return "http://www.telecredit.cn/";
} }
}, },
teleDomain:function(){ teleDomain: function () {
if(this.env=="dev"){ if (this.env == "dev") {
return "http://teledata.gongsibao.com/"; return "http://teledata.gongsibao.com/";
}else { } else {
return "http://www.telecredit.cn/"; return "http://www.telecredit.cn/";
} }
}, },
reqEsAddr:function(){ reqEsAddr: function () {
if(this.env=="dev"){ if (this.env == "dev") {
var localsettings=require("./localsettings"); var localsettings = require("./localsettings");
return "http://43.247.184.94:7200/";//localsettings.reqEsDevUrl; return "http://43.247.184.94:7200/";//localsettings.reqEsDevUrl;
}else { } else {
return "http://43.247.184.94:7200/"; return "http://43.247.184.94:7200/";
} }
}, },
reqEsAddrIc:function(){ reqEsAddrIc: function () {
if(this.env=="dev"){ if (this.env == "dev") {
var localsettings=require("./localsettings"); var localsettings = require("./localsettings");
return "http://43.247.184.94:9200/";//localsettings.reqEsDevUrl; return "http://43.247.184.94:9200/";//localsettings.reqEsDevUrl;
}else { } else {
return "http://43.247.184.94:9200/"; return "http://43.247.184.94:9200/";
} }
}, },
apiconfig:{ apiconfig: {
imageQueryKey:"4S3ypgaRq19bhKwB", imageQueryKey: "4S3ypgaRq19bhKwB",
MgphoneSearchUrl:function(){ MgphoneSearchUrl: function () {
return settings.reqMgAddr()+"phones" return settings.reqMgAddr() + "phones"
}, },
xzAllCompanySearchUrl:function(){ xzAllCompanySearchUrl: function () {
return settings.reqEsAddr()+"bigdata_business_gsb_tm_company_op/_search"; return settings.reqEsAddr() + "bigdata_business_gsb_tm_company_op/_search";
}, },
//e签宝签署状态变化完成后跳转boss页面Url地址(拒签、签署完成),在合同模板创建合同 5.4.2指定redirectUrl //e签宝签署状态变化完成后跳转boss页面Url地址(拒签、签署完成),在合同模板创建合同 5.4.2指定redirectUrl
eSignBaoRedirectBossUrl:function(){ eSignBaoRedirectBossUrl: function () {
return "https://ec.gongsibao.com/h5"; return "https://ec.gongsibao.com/h5";
}, },
//e签宝接口Url //e签宝接口Url
eSignBaoUrl:function(){ eSignBaoUrl: function () {
return "https://smlo.tsign.cn/opentreaty-service"; return "https://smlo.tsign.cn/opentreaty-service";
}, },
//e签宝银行验证接口Url //e签宝银行验证接口Url
eSignBaoBankVerifyUrl:function(){ eSignBaoBankVerifyUrl: function () {
return "https://smlo.tsign.cn/openrealname-service"; return "https://smlo.tsign.cn/openrealname-service";
}, },
//e签宝appId //e签宝appId
eSignBaoAppId:function(){ eSignBaoAppId: function () {
return "4438757581"; return "4438757581";
}, },
//e签宝appKey //e签宝appKey
eSignBaoAppKey:function(){ eSignBaoAppKey: function () {
return "0d798cdf01ecb31bf9949f319f8d77db"; return "0d798cdf01ecb31bf9949f319f8d77db";
}, },
//作品版权 //作品版权
icworksCopyrightSearchUrl:function(){ icworksCopyrightSearchUrl: function () {
return settings.reqEsAddrIc()+"bigdata_works_copyright_op/_search"; return settings.reqEsAddrIc() + "bigdata_works_copyright_op/_search";
}, },
//软件版权 //软件版权
icsoftwareCopyrightSearchUrl:function(){ icsoftwareCopyrightSearchUrl: function () {
return settings.reqEsAddrIc()+"bigdata_software_copyright_op/_search"; return settings.reqEsAddrIc() + "bigdata_software_copyright_op/_search";
}, },
//专利查询 //专利查询
paSearchUrl:function(){ paSearchUrl: function () {
return settings.reqEsAddrIc()+"bigdata_patent_op/_search"; return settings.reqEsAddrIc() + "bigdata_patent_op/_search";
}, },
icmemberSearchUrl:function(){ icmemberSearchUrl: function () {
return settings.reqEsAddrIc()+"bigdata_ic_gsb_member_op/_search"; return settings.reqEsAddrIc() + "bigdata_ic_gsb_member_op/_search";
}, },
icshareholderSearchUrl:function(){ icshareholderSearchUrl: function () {
return settings.reqEsAddrIc()+"bigdata_ic_gsb_shareholder_op/_search"; return settings.reqEsAddrIc() + "bigdata_ic_gsb_shareholder_op/_search";
}, },
icinvestSearchUrl:function(){ icinvestSearchUrl: function () {
return settings.reqEsAddrIc()+"bigdata_ic_gsb_invest_op/_search"; return settings.reqEsAddrIc() + "bigdata_ic_gsb_invest_op/_search";
}, },
icchangeSearchUrl:function(){ icchangeSearchUrl: function () {
return settings.reqEsAddrIc()+"bigdata_ic_gsb_change_op/_search"; return settings.reqEsAddrIc() + "bigdata_ic_gsb_change_op/_search";
}, },
iccompanynameSearchUrl:function(){ iccompanynameSearchUrl: function () {
return settings.reqEsAddrIc()+"bigdata_ic_gsb_company_op/_search"; return settings.reqEsAddrIc() + "bigdata_ic_gsb_company_op/_search";
}, },
agencynameSearchUrl:function(){ agencynameSearchUrl: function () {
return settings.reqEsAddr()+"bigdata_agency_company/_search"; return settings.reqEsAddr() + "bigdata_agency_company/_search";
}, },
iccompanycodeSearchUrl:function(){ iccompanycodeSearchUrl: function () {
return settings.reqEsAddrIc()+"bigdata_ic_gsb_company_op/_search"; return settings.reqEsAddrIc() + "bigdata_ic_gsb_company_op/_search";
}, },
iccompanyNumSearchUrl:function(){ iccompanyNumSearchUrl: function () {
return settings.reqEsAddrIc()+"bigdata_ic_gsb_company_op/_search"; return settings.reqEsAddrIc() + "bigdata_ic_gsb_company_op/_search";
}, },
icbranchSearchUrl:function(){ icbranchSearchUrl: function () {
return settings.reqEsAddrIc()+"bigdata_ic_gsb_branch_op/_search"; return settings.reqEsAddrIc() + "bigdata_ic_gsb_branch_op/_search";
}, },
magicSearchUrl:function(){ magicSearchUrl: function () {
return settings.reqEsAddrIc()+"bigdata_magic_ic_op/_search"; return settings.reqEsAddrIc() + "bigdata_magic_ic_op/_search";
}, },
xzCompanySearchUrl:function(){ xzCompanySearchUrl: function () {
return settings.reqEsAddr()+"bigdata_business_gsb_tm_company/_search"; return settings.reqEsAddr() + "bigdata_business_gsb_tm_company/_search";
}, },
xzDetailSearchUrl:function(){ xzDetailSearchUrl: function () {
return settings.reqEsAddr()+"bigdata_business_gsb_renewals_business/_search"; return settings.reqEsAddr() + "bigdata_business_gsb_renewals_business/_search";
}, },
byslTmUrl:function(){ byslTmUrl: function () {
return settings.reqEsAddr()+"bigdata_business_gsb_no_accepted_business/_search"; return settings.reqEsAddr() + "bigdata_business_gsb_no_accepted_business/_search";
}, },
byslDetailUrl:function(){ byslDetailUrl: function () {
return settings.reqEsAddr()+"bigdata_business_gsb_no_accepted_business/_search"; return settings.reqEsAddr() + "bigdata_business_gsb_no_accepted_business/_search";
}, },
tmSearchUrl:function(){ tmSearchUrl: function () {
return settings.reqEsAddr()+"bigdata_middle_gsb_tm_info/_search"; return settings.reqEsAddr() + "bigdata_middle_gsb_tm_info/_search";
}, },
tmFlowUrl:function(){ tmFlowUrl: function () {
return settings.reqEsAddr()+"bigdata_middle_gsb_tm_flow/_search"; return settings.reqEsAddr() + "bigdata_middle_gsb_tm_flow/_search";
}, },
tmNclUrl:function(){ tmNclUrl: function () {
return settings.reqEsAddr()+"bigdata_bdc_ncl_info/_search"; return settings.reqEsAddr() + "bigdata_bdc_ncl_info/_search";
}, },
agencycompanySearchUrl:function(){//代理机构名称查询 agencycompanySearchUrl: function () {//代理机构名称查询
return settings.reqEsAddr()+"bigdata_agency_company/_search"; return settings.reqEsAddr() + "bigdata_agency_company/_search";
}, },
yyDetailSearchUrl:function(){//商标异议详情查询 yyDetailSearchUrl: function () {//商标异议详情查询
return settings.reqEsAddr()+"bigdata_business_gsb_dissent_business/_search"; return settings.reqEsAddr() + "bigdata_business_gsb_dissent_business/_search";
}, },
bgDetailSearchUrl:function(){//商标变更详情查询 bgDetailSearchUrl: function () {//商标变更详情查询
return settings.reqEsAddr()+"bigdata_business_gsb_tm_change_business/_search"; return settings.reqEsAddr() + "bigdata_business_gsb_tm_change_business/_search";
}, },
nclUrl:function(){ nclUrl: function () {
return settings.reqEsAddr()+"bigdata_bdc_gsb_tm_ncl/_search"; return settings.reqEsAddr() + "bigdata_bdc_gsb_tm_ncl/_search";
}, },
opLogUrl:function(){ opLogUrl: function () {
return settings.reqEsAddr()+"bigdata_zc_op_log/_doc?pretty"; return settings.reqEsAddr() + "bigdata_zc_op_log/_doc?pretty";
}, },
opLogEsIsAdd:function(){ opLogEsIsAdd: function () {
return 1; return 1;
}, },
qcurl:"http://59.110.124.51:8250/qc?detailLink={address}", qcurl: "http://59.110.124.51:8250/qc?detailLink={address}",
bzLicenseForTMUrl:"http://bigdata.gongsibao.com/api/imghandle/bzLicenseForTM", bzLicenseForTMUrl: "http://bigdata.gongsibao.com/api/imghandle/bzLicenseForTM",
wtsUrl:"http://bigdata.gongsibao.com/api/imghandle/deleForTM", wtsUrl: "http://bigdata.gongsibao.com/api/imghandle/deleForTM",
adjustTMSizeUrl:"http://bigdata.gongsibao.com/api/imghandle/adjustTMSize", adjustTMSizeUrl: "http://bigdata.gongsibao.com/api/imghandle/adjustTMSize",
onLineMakeTMUrl:"http://bigdata.gongsibao.com/api/imghandle/onLineMakeTM", onLineMakeTMUrl: "http://bigdata.gongsibao.com/api/imghandle/onLineMakeTM",
toblackUrl:"https://bigdata.gongsibao.com/api/imghandle/toblack", toblackUrl: "https://bigdata.gongsibao.com/api/imghandle/toblack",
makeDeleForTMUrl:"http://boss.gongsibao.com/api/imghandle/makeDeleForTM", makeDeleForTMUrl: "http://boss.gongsibao.com/api/imghandle/makeDeleForTM",
LbsAddressUrl:"http://43.247.184.92:8880/lbs/api/addresssearch",//地址查询 LbsAddressUrl: "http://43.247.184.92:8880/lbs/api/addresssearch",//地址查询
LbsLalUrl:"http://43.247.184.92:8889/lbs/api/lalsearch",//坐标查询 LbsLalUrl: "http://43.247.184.92:8889/lbs/api/lalsearch",//坐标查询
LbsCityUrl:"http://43.247.184.92:8886/lbs/api/cityseicsoftwareCopyrightSearchUrlarch",//城市查询 LbsCityUrl: "http://43.247.184.92:8886/lbs/api/cityseicsoftwareCopyrightSearchUrlarch",//城市查询
pdf2wordUrl:function(){ pdf2wordUrl: function () {
if(settings.env=="dev"){ if (settings.env == "dev") {
return "http://59.110.125.77:3000/api/pdf2word/pdf2word"; return "http://59.110.125.77:3000/api/pdf2word/pdf2word";
}else { } else {
return "http://59.110.125.77:3000/api/pdf2word/pdf2word"; return "http://59.110.125.77:3000/api/pdf2word/pdf2word";
} }
}, },
imageQueryUrl:function(){//商标图像检索 imageQueryUrl: function () {//商标图像检索
if(settings.env=="dev"){ if (settings.env == "dev") {
return "http://43.247.184.92:8004/gsb/api/v1"; return "http://43.247.184.92:8004/gsb/api/v1";
}else { } else {
return "http://43.247.184.92:8004/gsb/api/v1"; return "http://43.247.184.92:8004/gsb/api/v1";
} }
}, },
tmZntjQueryUrl:function(){//商标智能推荐 tmZntjQueryUrl: function () {//商标智能推荐
if(settings.env=="dev"){ if (settings.env == "dev") {
return "http://192.168.18.123:8005/companybusiness?appKey=343aff200d18be6637d&name={companyName}"; return "http://192.168.18.123:8005/companybusiness?appKey=343aff200d18be6637d&name={companyName}";
}else { } else {
return "http://43.247.184.92:8005/companybusiness?appKey=343aff200d18be6637d&name={companyName}"; return "http://43.247.184.92:8005/companybusiness?appKey=343aff200d18be6637d&name={companyName}";
} }
}, },
tmtjdlQueryUrl:function(){//根据经营范围推荐 tmtjdlQueryUrl: function () {//根据经营范围推荐
if(settings.env=="dev"){ if (settings.env == "dev") {
return "http://192.168.18.181:7000/companynclone?appKey=343aff200d18be6637d&name={companyName}&tmName={tmName}"; return "http://192.168.18.181:7000/companynclone?appKey=343aff200d18be6637d&name={companyName}&tmName={tmName}";
}else { } else {
return "http://43.247.184.92:8006/companynclone?appKey=343aff200d18be6637d&name={companyName}&tmName={tmName}"; return "http://43.247.184.92:8006/companynclone?appKey=343aff200d18be6637d&name={companyName}&tmName={tmName}";
} }
}, },
tmncloneQueryUrl:function(){//计算通过率 tmncloneQueryUrl: function () {//计算通过率
if(settings.env=="dev"){ if (settings.env == "dev") {
return "http://192.168.18.44:7000/tmnclone?appKey=343aff200d18be6637d&nclonecode={nclonecode}&tmName={tmName}"; return "http://192.168.18.44:7000/tmnclone?appKey=343aff200d18be6637d&nclonecode={nclonecode}&tmName={tmName}";
}else { } else {
return "http://43.247.184.92:8007/tmnclone?appKey=343aff200d18be6637d&nclonecode={nclonecode}&tmName={tmName}"; return "http://43.247.184.92:8007/tmnclone?appKey=343aff200d18be6637d&nclonecode={nclonecode}&tmName={tmName}";
} }
}, },
yunzhanghuApiUrl:function(){//云帐户提现接口url yunzhanghuApiUrl: function () {//云帐户提现接口url
return "https://api-jiesuan.yunzhanghu.com/api/payment/v1/order-realtime"; return "https://api-jiesuan.yunzhanghu.com/api/payment/v1/order-realtime";
}, },
yunzhanghuCallbackApiUrl:function(){ yunzhanghuCallbackApiUrl: function () {
//云帐户提现回调接口url //云帐户提现回调接口url
return "http://bigdata.gongsibao.com/api/banktrade/tradecallback"; return "http://bigdata.gongsibao.com/api/banktrade/tradecallback";
}, },
yunzhanghuDealer_id:function(){ yunzhanghuDealer_id: function () {
//商户平台ID(dealer_id)——自己 //商户平台ID(dealer_id)——自己
return "27403253"; return "27403253";
}, },
yunzhanghuBroker_id:function(){ yunzhanghuBroker_id: function () {
//代征主体ID(broker_id) //代征主体ID(broker_id)
return "27532644"; return "27532644";
}, },
yunzhanghuAppKey:function(){ yunzhanghuAppKey: function () {
//云帐户提供的App Key //云帐户提供的App Key
return "V5bVuact66Lm55pWKdOTbdQn8XTjP749"; return "V5bVuact66Lm55pWKdOTbdQn8XTjP749";
}, },
yunzhanghuDESKey:function(){ yunzhanghuDESKey: function () {
//云帐户提供的3DES Key //云帐户提供的3DES Key
return "2GZeq2YnKtiPJpH9S4K4L7lj"; return "2GZeq2YnKtiPJpH9S4K4L7lj";
}, },
yunzhanghuQueryAccountsUrl:function(){//云帐户商户查询余额接口url yunzhanghuQueryAccountsUrl: function () {//云帐户商户查询余额接口url
return "https://api-jiesuan.yunzhanghu.com/api/payment/v1/query-accounts"; return "https://api-jiesuan.yunzhanghu.com/api/payment/v1/query-accounts";
}, },
yunzhanghuVerifyBankCardUrl:function(){//云帐户验证银行卡的有效性接口url yunzhanghuVerifyBankCardUrl: function () {//云帐户验证银行卡的有效性接口url
return "https://api-jiesuan.yunzhanghu.com/authentication/verify-bankcard-three-factor"; return "https://api-jiesuan.yunzhanghu.com/authentication/verify-bankcard-three-factor";
}, },
yunzhanghuTxXz:function(){//云帐户提现限制 yunzhanghuTxXz: function () {//云帐户提现限制
if(settings.env=="dev"){ if (settings.env == "dev") {
return "-1"; return "-1";
}else { } else {
return "-1";//不受限制 return "-1";//不受限制
} }
}, },
bossWithdrawApplyingKey:function(){//提现发放key bossWithdrawApplyingKey: function () {//提现发放key
return "3898EFhijklmCDEFGHIJKLMN"; return "3898EFhijklmCDEFGHIJKLMN";
}, },
}, },
homePage:function(){ homePage: function () {
if(this.env=="dev"){ if (this.env == "dev") {
var localsettings=require("./localsettings"); var localsettings = require("./localsettings");
return localsettings.reqHomePageDevUrl; return localsettings.reqHomePageDevUrl;
}else { } else {
return "http://boss.gongsibao.com/"; return "http://boss.gongsibao.com/";
} }
}, },
authUrl:function(){ authUrl: function () {
if(this.env=="dev"){ if (this.env == "dev") {
var localsettings=require("./localsettings"); var localsettings = require("./localsettings");
return localsettings.reqAuthUrl; return localsettings.reqAuthUrl;
}else { } else {
return "http://boss.gongsibao.com/admin"; return "http://boss.gongsibao.com/admin";
} }
}, },
reqMgAddr:function(){ reqMgAddr: function () {
if(this.env=="dev"){ if (this.env == "dev") {
var localsettings=require("./localsettings"); var localsettings = require("./localsettings");
return localsettings.reqMgDevUrl; return localsettings.reqMgDevUrl;
}else { } else {
return "mongodb://wdy1:123456@43.247.184.94:27017/"; return "mongodb://wdy1:123456@43.247.184.94:27017/";
} }
}, },
redis:function(){ redis: function () {
if(this.env=="dev"){ if (this.env == "dev") {
var localsettings=require("./localsettings"); var localsettings = require("./localsettings");
return localsettings.redis; return localsettings.redis;
}else { } else {
return { return {
host:"xxxxx", host: ENVINPUT.REDIS_HOST,
port:xxxxx, port: ENVINPUT.REDIS_PORT,
password:"xxxxx", password: ENVINPUT.REDIS_PWD,
db:xx, db: ENVINPUT.REDIS_DB,
}; };
} }
}, },
database:function(){ database: function () {
if(this.env=="dev"){ if (this.env == "dev") {
var localsettings=require("./localsettings"); var localsettings = require("./localsettings");
return localsettings.database; return localsettings.database;
}else{ } else {
return { return {
dbname : "xxxxx", dbname: ENVINPUT.DB_NAME,
user : "xxxx", user: ENVINPUT.DB_USER,
password : "xxxxx", password: ENVINPUT.DB_PWD,
config : { config: {
host: 'xxxxxx', host: ENVINPUT.DB_HOST,
dialect: 'mysql', dialect: 'mysql',
operatorsAliases: false, operatorsAliases: false,
pool: { pool: {
max: 5, max: 5,
min: 0, min: 0,
acquire: 90000000, acquire: 90000000,
idle: 1000000 idle: 1000000
}, },
debug:false, debug: false,
dialectOptions:{ dialectOptions: {
requestTimeout: 999999, requestTimeout: 999999,
// instanceName:'DEV' // instanceName:'DEV'
} //设置MSSQL超时时间 } //设置MSSQL超时时间
}, },
}; };
} }
},
databasehb:function(){
return {
dbname : 'gsb',
user : 'ro',
password : 'Louis@2020',
config : {
host: '59.110.125.77',
port:'9617',
dialect: 'mysql',
operatorsAliases: false,
pool: {
max: 5,
min: 0,
acquire: 90000000,
idle: 1000000
},
debug:false,
dialectOptions:{
requestTimeout: 999999,
// instanceName:'DEV'
} //设置MSSQL超时时间
},
};
} }
}; };
module.exports = settings; module.exports = settings;
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment