function newVerifier($type = '', $clientId, $targetId, $content = '', $faile_t = '', $verifier = '', $ip = '', $state = '') { switch ($type) { case 'auth': case 'login': $ip = empty($_SERVER['HTTP_X_FORWARDED_FOR']) ? $_SERVER['REMOTE_ADDR'] : $_SERVER['HTTP_X_FORWARDED_FOR']; $verifier = GetRandomString(16); case 'verify': SQL("INSERT INTO request_nonce (client_id,target_id,rtype,nonce,ip,content,faile_t,state) VALUES\n ('{$clientId}',{$targetId},'{$type}','{$verifier}','{$ip}','{$content}','{$faile_t}','{$state}')"); return $verifier; break; default: throw new IAuthException('unsuported verifier type'); } }
/** * Generates a token for this User which expires on the given timestamp * * @param int $expireTS Timestamp * @return string|false Token or FALSE in case of an error */ function generateToken($expireTS) { $uid = (int) $this->id; $expireTS = (int) $expireTS; $token = md5(GetRandomString(11)); $sql = "INSERT INTO `yg_user_tokens` (`ID`, `UID`, `TOKEN`, `TS` ) VALUES (NULL, ?, ?, ?);"; $result = sYDB()->Execute($sql, $uid, $token, $expireTS); if ($result === false) { throw new Exception(sYDB()->ErrorMsg()); } return $token; }
function sendVerifyEmail($midx, $email = null) { $member = $this->db()->select($this->table->member)->where('idx', $midx)->getOne(); if ($member == null) { return null; } $email = $email == null ? $member->email : $email; $check = $this->db()->select($this->table->email)->where('midx', $midx)->where('email', $email)->getOne(); $code = GetRandomString(6); $isSendEmail = false; if ($check == null) { $this->db()->insert($this->table->email, array('midx' => $midx, 'email' => $email, 'code' => $code, 'reg_date' => time(), 'status' => 'SENDING'))->execute(); $isSendEmail = true; } elseif ($check->status == 'CANCELED') { $this->db()->update($this->table->email, array('code' => $code, 'reg_date' => time(), 'status' => 'SENDING'))->where('midx', $midx)->where('email', $email)->execute(); $isSendEmail = true; } elseif ($check->status == 'VERIFIED') { return 'VERIFIED'; } if ($isSendEmail == true) { $subject = '[알쯔닷컴] 이메일주소 확인메일'; $content = '회원님이 입력하신 이메일주소가 유효한 이메일주소인지 확인하기 위한 이메일입니다.<br>알쯔닷컴을 이용하지 않거나, 최근에 이메일주소변경신청을 하신적이 없다면 본 메일은 무시하셔도 됩니다.'; if ($member->status == 'VERIFYING') { $content .= '<br><br>아래의 인증코드 6자리를 인증번호 확인란에 입력하시거나, 인증링크를 클릭하여 회원가입을 완료할 수 있습니다.'; } else { $content .= '<br><br>아래의 인증코드 6자리를 인증번호 확인란에 입력하여 이메일주소변경을 완료할 수 있습니다.'; } $content .= '<br><br>인증코드 : <b>' . $code . '</b>'; if ($member->status == 'VERIFYING') { $signupPage = $this->getMemberPage('signup'); $link = $this->IM->getUrl($signupPage->menu, $signupPage->page, 'verify', false, true) . '?code=' . urlencode(Encoder(json_encode(array('midx' => $midx, 'email' => $email, 'code' => $code)))); $content .= '<br>인증주소 : <a href="' . $link . '" target="_blank">' . $link . '</a>'; } $content .= '<br><br>본 메일은 발신전용메일로 회신되지 않습니다.<br>감사합니다.'; $this->IM->getModule('email')->addTo($email, $member->name)->setSubject($subject)->setContent($content)->send(); } if ($member->status == 'VERIFYING' && $member->email != $email) { $this->db()->update($this->table->member, array('email' => $email))->where('idx', $member->idx)->execute(); } return 'SENDING'; }
function DEXTImageSave() { global $the_request; $upload_type = $the_request["uploadtype"]; $proxy_url = $the_request["proxy_url"]; $save_file_ext = $the_request["savefileext"]; $server_domain = $the_request["serverdomain"]; $to_save_path_url = $the_request["tosavepathurl"]; $save_foldername_rule = $the_request["savafoldernamerule"]; $save_filename_rule = $the_request["savafilenamerule"]; $image_convert_format = $the_request["image_convert_format"]; $image_convert_width = $the_request["image_convert_width"]; $image_convert_height = $the_request["image_convert_height"]; $paste_image_data = $the_request["imagedata"]; if (null == $image_convert_format || $image_convert_format != "jpg") { $image_convert_format = ""; } if (null == $image_convert_width || $image_convert_width == "") { $image_convert_width = "0"; } if (null == $image_convert_height || $image_convert_height == "") { $image_convert_height = "0"; } if (strcasecmp($save_file_ext, "bmp") == 0) { $image_convert_format = "jpg"; } $resize_width = intval($image_convert_width); $resize_height = intval($image_convert_height); $save_file_name = GetRandomString(); $isPluginUpload = false; if ($upload_type != null && $upload_type == "plugin") { $upload_type = "image"; } if ($upload_type != null && $upload_type == "pluginkey") { $isPluginUpload = true; $g_allowFileExt = $g_allowFileExt . ", cab"; $save_file_name = $the_request["savefilename"]; } if (checkFileExt($save_file_ext) != true) { echo "Does not allow the file extension."; exit; } $to_save_path_url = DEXT_UF_CheckPath($to_save_path_url, $save_foldername_rule); $save_file = $to_save_path_url . "/" . $save_file_name . "." . $save_file_ext; $temp_file = ""; if (null != $paste_image_data && strlen($paste_image_data) > 0) { $w_file = fopen($save_file, "w"); $paste_image_data = base64_decode($paste_image_data); if (fwrite($w_file, $paste_image_data) === false) { // failed. echo "501"; } else { fclose($w_file); } } else { foreach ($_FILES as $file) { $temp_file = $file['tmp_name']; } move_uploaded_file($temp_file, $save_file); } // ================== if (strcasecmp($upload_type, "image") == 0 && (strcasecmp($image_convert_format, "jpg") == 0 || $resize_width > 0 || $resize_height > 0)) { $image_convert_format = "jpg"; if (file_exists($save_file)) { $imginfo = getImageSize($save_file); $img_width = $imginfo[0]; $img_height = $imginfo[1]; if ($resize_width == 0 || $resize_width > $img_width) { if ($resize_width == 0 && $resize_height > 0 && $resize_height < $img_height) { $resize_width = ceil($img_width * $resize_height / ($img_height * 1.0)); } else { $resize_width = $img_width; } } if ($resize_height == 0 || $resize_height > $img_height) { if ($resize_height == 0 && $resize_width > 0 && $resize_width < $img_width) { $resize_height = ceil($img_height * $resize_width / ($img_width * 1.0)); } else { $resize_height = $img_height; } } $resize_file = $to_save_path_url . "/" . $save_file_name . "_r." . $image_convert_format; $convert = make_gdimage($save_file, $resize_width, $resize_height, $resize_file, $image_convert_format); if ($convert == 1) { $save_file_name = $save_file_name . "_r"; $save_file_ext = "jpg"; unlink($save_file); } else { echo $convert; } $save_file = $to_save_path_url . "/" . $save_file_name . "." . $save_file_ext; } } // 이미지 크기 $imginfo = getImageSize($save_file); $img_width = $imginfo[0]; $img_height = $imginfo[1]; $retFullurlPath = get_url_from_filepath($save_file); if (null != $proxy_url && strlen($proxy_url) > 0) { if ($isPluginUpload == false) { $retFullurlPath = $retFullurlPath . "*" . $img_width . "^" . $img_height; } echo "<script> window.location.href='" . $proxy_url . "?proxy_server_image_url=" . $retFullurlPath . "'; </script>"; } else { if ($isPluginUpload == false) { $retFullurlPath = $retFullurlPath . "?" . $img_width . "^" . $img_height; } echo $retFullurlPath; } return $save_file; }