| | |
| | | * @return |
| | | */ |
| | | @Override |
| | | public ResultUtil queryCaptcha(String phone, Integer type) throws Exception { |
| | | public ResultUtil queryCaptcha(String phone, Integer type, Integer language) throws Exception { |
| | | Random random = new Random(); |
| | | Object value = redisUtil.getValue(phone); |
| | | if(value==null){ |
| | |
| | | sb.append((int) (random.nextDouble() * 10)); |
| | | } |
| | | String authCode = sb.toString(); |
| | | String sms = "短信验证码【" + authCode + "】已发到您的手机,验证码将在5分钟后失效,请及时登录!"; |
| | | String sms = ""; |
| | | |
| | | //发送验证码短信 |
| | | redisUtil.setStrValue(phone, authCode, 5 * 60);//设置五分钟过期 |
| | | SMSUtil.send_huawei_sms("b793ae3d41a049059197bfe92cf8bc83", "+" + phone, "[\"" + authCode + "\"]"); |
| | | System.out.println(sms); |
| | | switch (language){ |
| | | case 1: |
| | | sms = "您的验证码为:" + authCode + ",该验证码5分钟内有效,请勿泄漏于他人!"; |
| | | break; |
| | | case 2: |
| | | sms = "Your verification code is: " + authCode + ", the verification code is valid within 5 minutes, do not leak to others!"; |
| | | break; |
| | | case 3: |
| | | sms = "Votre code de vérification est: " + authCode + ". Ce code est valide pendant 5 minutes. Ne le divulguez pas aux autres!"; |
| | | break; |
| | | } |
| | | SMSUtil.sendTwilioMessage("+" + phone, sms); |
| | | } |
| | | return ResultUtil.success(); |
| | | } |
| | |
| | | String path = templatePath + "user/register.html"; |
| | | Document document = Jsoup.parse(new File(path), "UTF-8"); |
| | | if(1 == language){ |
| | | document.getElementById("english").attr("style", "display: none;"); |
| | | document.getElementById("french").attr("style", "display: none;"); |
| | | document.getElementById("english").remove(); |
| | | document.getElementById("french").remove(); |
| | | Element user_chinese = document.getElementById("user_chinese"); |
| | | user_chinese.text("您好 " + userInfo.getNickName() + ","); |
| | | } |
| | | if(2 == language){ |
| | | document.getElementById("chinese").attr("style", "display: none;"); |
| | | document.getElementById("french").attr("style", "display: none;"); |
| | | document.getElementById("chinese").remove(); |
| | | document.getElementById("french").remove(); |
| | | Element user_english = document.getElementById("user_english"); |
| | | user_english.text("Hello " + userInfo.getNickName() + ","); |
| | | } |
| | | if(3 == language){ |
| | | document.getElementById("chinese").attr("style", "display: none;"); |
| | | document.getElementById("english").attr("style", "display: none;"); |
| | | document.getElementById("chinese").remove(); |
| | | document.getElementById("english").remove(); |
| | | Element user_french = document.getElementById("user_french"); |
| | | user_french.text("Bonjour " + userInfo.getNickName() + ","); |
| | | } |
| | |
| | | String path1 = templatePath + "driver/index.html"; |
| | | Document document1 = Jsoup.parse(new File(path1), "UTF-8"); |
| | | if(1 == language){ |
| | | document1.getElementById("english").attr("style", "display: none;"); |
| | | document1.getElementById("french").attr("style", "display: none;"); |
| | | document1.getElementById("invite").attr("style", "display: none;"); |
| | | document1.getElementById("settle").attr("style", "display: none;"); |
| | | document1.getElementById("pass").attr("style", "display: none;"); |
| | | document1.getElementById("bill").attr("style", "display: none;"); |
| | | document1.getElementById("reward").attr("style", "display: none;"); |
| | | document1.getElementById("rewardToday").attr("style", "display: none;"); |
| | | document1.getElementById("english").remove(); |
| | | document1.getElementById("french").remove(); |
| | | document1.getElementById("invite").remove(); |
| | | document1.getElementById("settle").remove(); |
| | | document1.getElementById("pass").remove(); |
| | | document1.getElementById("bill").remove(); |
| | | document1.getElementById("reward").remove(); |
| | | document1.getElementById("rewardToday").remove(); |
| | | |
| | | Element user_user = document1.getElementById("user_user"); |
| | | user_user.text("您好 " + driver.getName() + ","); |
| | | user_user.text("您好 " + driver.getFirstName() + " " + driver.getLastName() + ","); |
| | | Element user_content = document1.getElementById("user_content"); |
| | | user_content.text("您已成功邀请一位用户注册I-GO,获得奖励GHS " + bigDecimal.doubleValue() + ",请查收"); |
| | | } |
| | | if(2 == language){ |
| | | document1.getElementById("chinese").attr("style", "display: none;"); |
| | | document1.getElementById("french").attr("style", "display: none;"); |
| | | document1.getElementById("invite1").attr("style", "display: none;"); |
| | | document1.getElementById("settle1").attr("style", "display: none;"); |
| | | document1.getElementById("pass1").attr("style", "display: none;"); |
| | | document1.getElementById("bill1").attr("style", "display: none;"); |
| | | document1.getElementById("reward1").attr("style", "display: none;"); |
| | | document1.getElementById("rewardToday1").attr("style", "display: none;"); |
| | | document1.getElementById("chinese").remove(); |
| | | document1.getElementById("french").remove(); |
| | | document1.getElementById("invite1").remove(); |
| | | document1.getElementById("settle1").remove(); |
| | | document1.getElementById("pass1").remove(); |
| | | document1.getElementById("bill1").remove(); |
| | | document1.getElementById("reward1").remove(); |
| | | document1.getElementById("rewardToday1").remove(); |
| | | |
| | | Element user1_user = document1.getElementById("user1_user"); |
| | | user1_user.text("Hello " + driver.getName() + ","); |
| | | user1_user.text("Hello " + driver.getFirstName() + " " + driver.getLastName() + ","); |
| | | Element user1_content = document1.getElementById("user1_content"); |
| | | user1_content.text("You have succeeded to invite a rider to register with I-GO, so you received a GHS " + bigDecimal.doubleValue() + " bonus, please check your balance."); |
| | | } |
| | | if(3 == language){ |
| | | document1.getElementById("chinese").attr("style", "display: none;"); |
| | | document1.getElementById("english").attr("style", "display: none;"); |
| | | document1.getElementById("invite1").attr("style", "display: none;"); |
| | | document1.getElementById("settle1").attr("style", "display: none;"); |
| | | document1.getElementById("pass1").attr("style", "display: none;"); |
| | | document1.getElementById("bill1").attr("style", "display: none;"); |
| | | document1.getElementById("reward1").attr("style", "display: none;"); |
| | | document1.getElementById("rewardToday1").attr("style", "display: none;"); |
| | | document1.getElementById("chinese").remove(); |
| | | document1.getElementById("english").remove(); |
| | | document1.getElementById("invite1").remove(); |
| | | document1.getElementById("settle1").remove(); |
| | | document1.getElementById("pass1").remove(); |
| | | document1.getElementById("bill1").remove(); |
| | | document1.getElementById("reward1").remove(); |
| | | document1.getElementById("rewardToday1").remove(); |
| | | |
| | | Element user2_user = document1.getElementById("user2_user"); |
| | | user2_user.text("Bonjour " + driver.getName() + ","); |
| | | user2_user.text("Bonjour " + driver.getFirstName() + " " + driver.getLastName() + ","); |
| | | Element user2_content = document1.getElementById("user2_content"); |
| | | user2_content.text("Vous avez invité avec succès un utilisateur à s’inscrire à i-go pour recevoir une récompense GHS " + bigDecimal.doubleValue() + ". Veuillez vérifier"); |
| | | } |
| | |
| | | String path1 = templatePath + "user/coupon.html"; |
| | | Document document1 = Jsoup.parse(new File(path1), "UTF-8"); |
| | | if(language == 1){ |
| | | document1.getElementById("english").attr("style", "display: none;"); |
| | | document1.getElementById("french").attr("style", "display: none;"); |
| | | document1.getElementById("english").remove(); |
| | | document1.getElementById("french").remove(); |
| | | Element chinese_user = document1.getElementById("chinese_user"); |
| | | chinese_user.text("您好 " + userInfo1.getNickName() + ","); |
| | | Element chinese_number = document1.getElementById("chinese_number"); |
| | |
| | | chinese_date.text("此活动有效期在" + startTime + "至" + endTime + ",详情请查看I-GO平台"); |
| | | } |
| | | if(language == 2){ |
| | | document1.getElementById("chinese").attr("style", "display: none;"); |
| | | document1.getElementById("french").attr("style", "display: none;"); |
| | | document1.getElementById("chinese").remove(); |
| | | document1.getElementById("french").remove(); |
| | | Element english_user = document1.getElementById("english_user"); |
| | | english_user.text("Hello " + userInfo1.getNickName() + ","); |
| | | Element english_number = document1.getElementById("english_number"); |
| | |
| | | english_date.text("You could use them from" + startTime + "to" + endTime); |
| | | } |
| | | if(language == 3){ |
| | | document1.getElementById("chinese").attr("style", "display: none;"); |
| | | document1.getElementById("english").attr("style", "display: none;"); |
| | | document1.getElementById("chinese").remove(); |
| | | document1.getElementById("english").remove(); |
| | | Element french_user = document1.getElementById("french_user"); |
| | | french_user.text("Bonjour " + userInfo1.getNickName() + ","); |
| | | Element french_number = document1.getElementById("french_number"); |
| | |
| | | String path = templatePath + "user/register.html"; |
| | | Document document = Jsoup.parse(new File(path), "UTF-8"); |
| | | if(1 == language){ |
| | | document.getElementById("english").attr("style", "display: none;"); |
| | | document.getElementById("french").attr("style", "display: none;"); |
| | | document.getElementById("english").remove(); |
| | | document.getElementById("french").remove(); |
| | | Element user_chinese = document.getElementById("user_chinese"); |
| | | user_chinese.text("您好 " + userInfo.getNickName() + ","); |
| | | } |
| | | if(2 == language){ |
| | | document.getElementById("chinese").attr("style", "display: none;"); |
| | | document.getElementById("french").attr("style", "display: none;"); |
| | | document.getElementById("chinese").remove(); |
| | | document.getElementById("french").remove(); |
| | | Element user_english = document.getElementById("user_english"); |
| | | user_english.text("Hello " + userInfo.getNickName() + ","); |
| | | } |
| | | if(3 == language){ |
| | | document.getElementById("chinese").attr("style", "display: none;"); |
| | | document.getElementById("english").attr("style", "display: none;"); |
| | | document.getElementById("chinese").remove(); |
| | | document.getElementById("english").remove(); |
| | | Element user_french = document.getElementById("user_french"); |
| | | user_french.text("Bonjour " + userInfo.getNickName() + ","); |
| | | } |
| | |
| | | String path = templatePath + "user/coupon.html"; |
| | | Document document = Jsoup.parse(new File(path), "UTF-8"); |
| | | if(language == 1){ |
| | | document.getElementById("english").attr("style", "display: none;"); |
| | | document.getElementById("french").attr("style", "display: none;"); |
| | | document.getElementById("english").remove(); |
| | | document.getElementById("french").remove(); |
| | | Element chinese_user = document.getElementById("chinese_user"); |
| | | chinese_user.text("您好 " + userInfo.getNickName() + ","); |
| | | Element chinese_number = document.getElementById("chinese_number"); |
| | |
| | | chinese_date.text("此活动有效期在" + startTime + "至" + endTime + ",详情请查看I-GO平台"); |
| | | } |
| | | if(language == 2){ |
| | | document.getElementById("chinese").attr("style", "display: none;"); |
| | | document.getElementById("french").attr("style", "display: none;"); |
| | | document.getElementById("chinese").remove(); |
| | | document.getElementById("french").remove(); |
| | | Element english_user = document.getElementById("english_user"); |
| | | english_user.text("Hello " + userInfo.getNickName() + ","); |
| | | Element english_number = document.getElementById("english_number"); |
| | |
| | | english_date.text("You could use them from" + startTime + "to" + endTime); |
| | | } |
| | | if(language == 3){ |
| | | document.getElementById("chinese").attr("style", "display: none;"); |
| | | document.getElementById("english").attr("style", "display: none;"); |
| | | document.getElementById("chinese").remove(); |
| | | document.getElementById("english").remove(); |
| | | Element french_user = document.getElementById("french_user"); |
| | | french_user.text("Bonjour " + userInfo.getNickName() + ","); |
| | | Element french_number = document.getElementById("french_number"); |
| | |
| | | String path = templatePath + "user/register.html"; |
| | | Document document = Jsoup.parse(new File(path), "UTF-8"); |
| | | if(1 == language){ |
| | | document.getElementById("english").attr("style", "display: none;"); |
| | | document.getElementById("french").attr("style", "display: none;"); |
| | | document.getElementById("english").remove(); |
| | | document.getElementById("french").remove(); |
| | | Element user_chinese = document.getElementById("user_chinese"); |
| | | user_chinese.text("您好 " + userInfo.getNickName() + ","); |
| | | } |
| | | if(2 == language){ |
| | | document.getElementById("chinese").attr("style", "display: none;"); |
| | | document.getElementById("french").attr("style", "display: none;"); |
| | | document.getElementById("chinese").remove(); |
| | | document.getElementById("french").remove(); |
| | | Element user_english = document.getElementById("user_english"); |
| | | user_english.text("Hello " + userInfo.getNickName() + ","); |
| | | } |
| | | if(3 == language){ |
| | | document.getElementById("chinese").attr("style", "display: none;"); |
| | | document.getElementById("english").attr("style", "display: none;"); |
| | | document.getElementById("chinese").remove(); |
| | | document.getElementById("english").remove(); |
| | | Element user_french = document.getElementById("user_french"); |
| | | user_french.text("Bonjour " + userInfo.getNickName() + ","); |
| | | } |
| | |
| | | String path = templatePath + "user/coupon.html"; |
| | | Document document = Jsoup.parse(new File(path), "UTF-8"); |
| | | if(language == 1){ |
| | | document.getElementById("english").attr("style", "display: none;"); |
| | | document.getElementById("french").attr("style", "display: none;"); |
| | | document.getElementById("english").remove(); |
| | | document.getElementById("french").remove(); |
| | | Element chinese_user = document.getElementById("chinese_user"); |
| | | chinese_user.text("您好 " + userInfo.getNickName() + ","); |
| | | Element chinese_number = document.getElementById("chinese_number"); |
| | |
| | | chinese_date.text("此活动有效期在" + startTime + "至" + endTime + ",详情请查看I-GO平台"); |
| | | } |
| | | if(language == 2){ |
| | | document.getElementById("chinese").attr("style", "display: none;"); |
| | | document.getElementById("french").attr("style", "display: none;"); |
| | | document.getElementById("chinese").remove(); |
| | | document.getElementById("french").remove(); |
| | | Element english_user = document.getElementById("english_user"); |
| | | english_user.text("Hello " + userInfo.getNickName() + ","); |
| | | Element english_number = document.getElementById("english_number"); |
| | |
| | | english_date.text("You could use them from" + startTime + "to" + endTime); |
| | | } |
| | | if(language == 3){ |
| | | document.getElementById("chinese").attr("style", "display: none;"); |
| | | document.getElementById("english").attr("style", "display: none;"); |
| | | document.getElementById("chinese").remove(); |
| | | document.getElementById("english").remove(); |
| | | Element french_user = document.getElementById("french_user"); |
| | | french_user.text("Bonjour " + userInfo.getNickName() + ","); |
| | | Element french_number = document.getElementById("french_number"); |
| | |
| | | public ResultUtil depositBalance(Integer payType, String bankCardId, Double money, Integer uid, Integer type, Integer language) throws Exception { |
| | | UserInfo userInfo = userInfoMapper.selectById(uid); |
| | | if(money.compareTo(0D) <= 0){ |
| | | return ResultUtil.error("支付金额必须大于0元"); |
| | | return ResultUtil.error("支付金额必须大于0元", ""); |
| | | } |
| | | if(payType == 1){//手机支付 |
| | | Integer integer = paymentRecordService.saveData(2, uid, 1, null, null, 1, money, "", 1);//添加预支付数据 |
| | |
| | | checkoutRequest.setRequestDescription("Account top-up"); |
| | | checkoutRequest.setCallbackUrl(callbackPath + "/base/wxCancelUserBalance"); |
| | | checkoutRequest.setPendingRedirectUrl(""); |
| | | checkoutRequest.setSuccessRedirectUrl("https://10pz685243.zicp.fun"); |
| | | checkoutRequest.setFailRedirectUrl("https://www.baidu.com"); |
| | | checkoutRequest.setSuccessRedirectUrl("http://182.160.16.251:81/payMoney/pages/success.html"); |
| | | checkoutRequest.setFailRedirectUrl("http://182.160.16.251:81/payMoney/pages/fail.html"); |
| | | return TinggPayUtil.checkoutRequest(checkoutRequest); |
| | | } |
| | | |
| | |
| | | checkoutRequest.setRequestDescription("Account top-up"); |
| | | checkoutRequest.setCallbackUrl(callbackPath + "/base/wxCancelUserBalance"); |
| | | checkoutRequest.setPendingRedirectUrl(""); |
| | | checkoutRequest.setSuccessRedirectUrl("https://10pz685243.zicp.fun"); |
| | | checkoutRequest.setFailRedirectUrl("https://www.baidu.com"); |
| | | checkoutRequest.setSuccessRedirectUrl("http://182.160.16.251:81/payMoney/pages/success.html"); |
| | | checkoutRequest.setFailRedirectUrl("http://182.160.16.251:81/payMoney/pages/fail.html"); |
| | | return TinggPayUtil.checkoutRequest(checkoutRequest); |
| | | } |
| | | return ResultUtil.success(); |
| | | return ResultUtil.success(""); |
| | | } |
| | | |
| | | |
| | |
| | | String path = templatePath + "user/passwordReset.html"; |
| | | Document document = Jsoup.parse(new File(path), "UTF-8"); |
| | | if(1 == language){ |
| | | document.getElementById("english").attr("style", "display: none;"); |
| | | document.getElementById("french").attr("style", "display: none;"); |
| | | document.getElementById("english").remove(); |
| | | document.getElementById("french").remove(); |
| | | Element user_chinese = document.getElementById("user_chinese"); |
| | | user_chinese.text("您好 " + userInfo.getNickName() + ","); |
| | | } |
| | | if(2 == language){ |
| | | document.getElementById("chinese").attr("style", "display: none;"); |
| | | document.getElementById("french").attr("style", "display: none;"); |
| | | document.getElementById("chinese").remove(); |
| | | document.getElementById("french").remove(); |
| | | Element user_chinese = document.getElementById("user_english"); |
| | | user_chinese.text("Hello " + userInfo.getNickName() + ","); |
| | | } |
| | | if(3 == language){ |
| | | document.getElementById("chinese").attr("style", "display: none;"); |
| | | document.getElementById("english").attr("style", "display: none;"); |
| | | document.getElementById("chinese").remove(); |
| | | document.getElementById("english").remove(); |
| | | Element user_french = document.getElementById("user_french"); |
| | | user_french.text("Bonjour " + userInfo.getNickName() + ","); |
| | | } |
| | |
| | | * @throws Exception |
| | | */ |
| | | @Override |
| | | public void updateInfo(String avatar, String nickname, Integer sex, Date birthday, String email, String lastName, String firstName, Integer uid) throws Exception { |
| | | public ResultUtil updateInfo(String avatar, String nickname, Integer sex, Date birthday, String email, String code, String lastName, String firstName, Integer uid, Integer language) throws Exception { |
| | | UserInfo userInfo = this.selectById(uid); |
| | | if(ToolUtil.isNotEmpty(avatar)){ |
| | | userInfo.setAvatar(avatar); |
| | |
| | | userInfo.setBirthday(birthday); |
| | | } |
| | | if(null != email){ |
| | | String value = redisUtil.getValue(email); |
| | | if(ToolUtil.isEmpty(value) || code.equals(value)){ |
| | | return ResultUtil.error(language == 1 ? "验证码无效" : language == 2 ? "Invalid captcha" : "Code de vérification invalide"); |
| | | } |
| | | userInfo.setEmail(email); |
| | | } |
| | | if(null != lastName){ |
| | |
| | | userInfo.setFirstName(firstName); |
| | | } |
| | | this.updateById(userInfo); |
| | | return ResultUtil.success(); |
| | | } |
| | | |
| | | |
| | |
| | | * 完成余额充值后的处理 |
| | | * @param id 用户id |
| | | * @param order_id 工行订单id |
| | | * @param type 支付类型(1=微信,2=支付宝) |
| | | * @throws Exception |
| | | */ |
| | | @Override |
| | | public void payCancelUserBalance(Integer id, String order_id, Integer paymentRecordId, Integer type, Integer language) throws Exception { |
| | | public void payCancelUserBalance(Integer id, String order_id, Integer paymentRecordId, Integer language) throws Exception { |
| | | PaymentRecord query = paymentRecordService.selectById(paymentRecordId); |
| | | UserInfo userInfo = this.selectById(query.getUserId()); |
| | | if(null != query){ |
| | |
| | | this.addCoupon(userInfo.getId(), query.getAmount(), userInfo.getCompanyId(), query.getId(), language);//添加优惠券 |
| | | |
| | | }else{ |
| | | System.err.println("预支付数据异常(userId = " + id + ")"); |
| | | System.err.println("预支付数据异常(paymentRecordId = " + paymentRecordId + ")"); |
| | | } |
| | | |
| | | } |
| | |
| | | String path = templatePath + "user/coupon.html"; |
| | | Document document = Jsoup.parse(new File(path), "UTF-8"); |
| | | if(language == 1){ |
| | | document.getElementById("english").attr("style", "display: none;"); |
| | | document.getElementById("french").attr("style", "display: none;"); |
| | | document.getElementById("english").remove(); |
| | | document.getElementById("french").remove(); |
| | | Element chinese_user = document.getElementById("chinese_user"); |
| | | chinese_user.text("您好 " + userInfo.getNickName() + ","); |
| | | Element chinese_number = document.getElementById("chinese_number"); |
| | |
| | | chinese_date.text("此活动有效期在" + startTime + "至" + endTime + ",详情请查看I-GO平台"); |
| | | } |
| | | if(language == 2){ |
| | | document.getElementById("chinese").attr("style", "display: none;"); |
| | | document.getElementById("french").attr("style", "display: none;"); |
| | | document.getElementById("chinese").remove(); |
| | | document.getElementById("french").remove(); |
| | | Element english_user = document.getElementById("english_user"); |
| | | english_user.text("Hello " + userInfo.getNickName() + ","); |
| | | Element english_number = document.getElementById("english_number"); |
| | |
| | | english_date.text("You could use them from" + startTime + "to" + endTime); |
| | | } |
| | | if(language == 3){ |
| | | document.getElementById("chinese").attr("style", "display: none;"); |
| | | document.getElementById("english").attr("style", "display: none;"); |
| | | document.getElementById("chinese").remove(); |
| | | document.getElementById("english").remove(); |
| | | Element french_user = document.getElementById("french_user"); |
| | | french_user.text("Bonjour " + userInfo.getNickName() + ","); |
| | | Element french_number = document.getElementById("french_number"); |
| | |
| | | String path = templatePath + "user/coupon.html"; |
| | | Document document = Jsoup.parse(new File(path), "UTF-8"); |
| | | if(language == 1){ |
| | | document.getElementById("english").attr("style", "display: none;"); |
| | | document.getElementById("french").attr("style", "display: none;"); |
| | | document.getElementById("english").remove(); |
| | | document.getElementById("french").remove(); |
| | | Element chinese_user = document.getElementById("chinese_user"); |
| | | chinese_user.text("您好 " + userInfo.getNickName() + ","); |
| | | Element chinese_number = document.getElementById("chinese_number"); |
| | |
| | | chinese_date.text("此活动有效期在" + startTime + "至" + endTime + ",详情请查看I-GO平台"); |
| | | } |
| | | if(language == 2){ |
| | | document.getElementById("chinese").attr("style", "display: none;"); |
| | | document.getElementById("french").attr("style", "display: none;"); |
| | | document.getElementById("chinese").remove(); |
| | | document.getElementById("french").remove(); |
| | | Element english_user = document.getElementById("english_user"); |
| | | english_user.text("Hello " + userInfo.getNickName() + ","); |
| | | Element english_number = document.getElementById("english_number"); |
| | |
| | | english_date.text("You could use them from" + startTime + "to" + endTime); |
| | | } |
| | | if(language == 3){ |
| | | document.getElementById("chinese").attr("style", "display: none;"); |
| | | document.getElementById("english").attr("style", "display: none;"); |
| | | document.getElementById("chinese").remove(); |
| | | document.getElementById("english").remove(); |
| | | Element french_user = document.getElementById("french_user"); |
| | | french_user.text("Bonjour " + userInfo.getNickName() + ","); |
| | | Element french_number = document.getElementById("french_number"); |