forked from saurabh/orbit4-5
added new 404 page and also fixed member import
This commit is contained in:
parent
424d3fa559
commit
5d6f33c90b
|
@ -271,18 +271,14 @@ class Admin::ImportController < OrbitAdminController
|
|||
render :json => settings.to_json
|
||||
end
|
||||
|
||||
def rss2_members
|
||||
uri = URI.parse(params['url'])
|
||||
def rss2_members_info
|
||||
uri = URI.parse(params['url'])
|
||||
# @@thread = Thread.new do
|
||||
http = Net::HTTP.new(uri.host, uri.port)
|
||||
request = Net::HTTP::Get.new(uri.request_uri)
|
||||
response = http.request(request)
|
||||
data = response.body
|
||||
data = JSON.parse(data)
|
||||
@@import_stats["total_members"] = data["users"].count
|
||||
@@import_stats["current_status"] = 0
|
||||
@@import_stats["success"] = true
|
||||
write_to_file
|
||||
|
||||
rss2_roles = data["attributes"]
|
||||
rss2_roles.each do |key,rss2_role|
|
||||
|
@ -327,13 +323,22 @@ class Admin::ImportController < OrbitAdminController
|
|||
|
||||
end
|
||||
end
|
||||
render :json => {"success" => true, "total_users" => data["total_users"]}.to_json
|
||||
end
|
||||
|
||||
def rss2_members
|
||||
uri = URI.parse(params['url'])
|
||||
# @@thread = Thread.new do
|
||||
http = Net::HTTP.new(uri.host, uri.port)
|
||||
request = Net::HTTP::Get.new(uri.request_uri)
|
||||
response = http.request(request)
|
||||
data = response.body
|
||||
data = JSON.parse(data)
|
||||
|
||||
|
||||
members = data["users"]
|
||||
data_to_send = []
|
||||
members.each do |member|
|
||||
@@import_stats["current_member"] = member["user_id"]
|
||||
@@import_stats["current_member_name"] = member["primary_email"]
|
||||
write_to_file
|
||||
|
||||
new_member = MemberProfile.find_by(rss2_id: member["rss2_id"]) rescue nil
|
||||
if new_member.nil?
|
||||
|
@ -505,8 +510,6 @@ class Admin::ImportController < OrbitAdminController
|
|||
end
|
||||
|
||||
new_member.save
|
||||
@@import_stats["current_status"] = @@import_stats["current_status"] + 1
|
||||
write_to_file
|
||||
if member["user_id"].present?
|
||||
user = User.new
|
||||
user.user_name = member["user_id"]
|
||||
|
@ -897,8 +900,8 @@ class Admin::ImportController < OrbitAdminController
|
|||
"en" => diploma["degree"]["en"],
|
||||
"zh_tw" => diploma["degree"]["zh-tw"]},
|
||||
:language => diploma["language"].gsub('-','_'),
|
||||
:start_date => Date.strptime(diploma["start_date"], '%Y-%m'),
|
||||
:end_date => Date.strptime(diploma["end_date"], '%Y-%m'),
|
||||
:start_date => (Date.strptime(diploma["start_date"], '%Y-%m') rescue nil),
|
||||
:end_date => (Date.strptime(diploma["end_date"], '%Y-%m') rescue nil),
|
||||
:rss2_id => diploma["rss2_id"])
|
||||
new_diploma.member_profile = member
|
||||
new_diploma.save
|
||||
|
|
|
@ -198,7 +198,8 @@
|
|||
importLinks();
|
||||
break;
|
||||
case "members":
|
||||
importMembers();
|
||||
$(this).fadeOut();
|
||||
importMembersInfo();
|
||||
break;
|
||||
default:
|
||||
getModuleCategories();
|
||||
|
@ -280,7 +281,7 @@
|
|||
var percent = ((number + 1) * 100) / total;
|
||||
$("#import-progress .bar").css('width',percent + "%");
|
||||
if(number != (total - 1)){
|
||||
setTimeout(importImagesForAlbums(number + 1),300)
|
||||
setTimeout(importImagesForAlbums(number + 1),300);
|
||||
}else{
|
||||
$("#import-progress-text").html("Finished importing albums.");
|
||||
}
|
||||
|
@ -294,30 +295,57 @@
|
|||
}
|
||||
|
||||
|
||||
var sto = null;
|
||||
var new_members_data = null;
|
||||
var importMembers = function(){
|
||||
var sto = null,
|
||||
new_members_data = [],
|
||||
number_of_members_to_import = 5,
|
||||
total_members = 0,
|
||||
maximum_member_pages = 0;
|
||||
|
||||
var importMembersInfo = function(){
|
||||
$("#import-progress .bar").css('width', '0%');
|
||||
$("#import-progress-text").html("Importing Member..<br/>");
|
||||
$("#import-progress-text").html("Getting Member Info..<br/>");
|
||||
$.ajax({
|
||||
type: "post",
|
||||
url: '<%= admin_import_rss2_members_path %>',
|
||||
url: '<%= admin_import_rss2_members_info_path %>',
|
||||
data : {"url" : url+'?module='+module}
|
||||
}).done(function(data){
|
||||
if(data.success == true){
|
||||
// clearTimeout(sto);
|
||||
$("#import-progress-text").html("Finished importing Members.<br/>");
|
||||
$("#import-progress .bar").css('width', '100%');
|
||||
new_members_data = data.members;
|
||||
importPlugins(0);
|
||||
$("#import-progress-text").html("Now importing Members.<br/>");
|
||||
total_members = parseInt(data.total_users);
|
||||
maximum_member_pages = Math.ceil(total_members / number_of_members_to_import) - 1;
|
||||
importMembers(0);
|
||||
|
||||
}
|
||||
}).fail(function(){
|
||||
$("#import-progress-text").html("Importing failed, click on start to try again.");
|
||||
$("#alert-msg").text("There was an unknown error");
|
||||
$(".alert-danger").removeClass("hide").show();
|
||||
})
|
||||
}
|
||||
|
||||
var importMembers = function(page_number){
|
||||
$("#import-progress-text").html("Importing Members..<br/>");
|
||||
$.ajax({
|
||||
type: "post",
|
||||
url: '<%= admin_import_rss2_members_path %>',
|
||||
data : {"url" : url+'?module='+module+"&page=" + page_number + "&total=" + number_of_members_to_import}
|
||||
}).done(function(data){
|
||||
if(data.success == true){
|
||||
var percent = ((number_of_members_to_import * (page_number + 1)) * 100) / total_members;
|
||||
$("#import-progress .bar").css('width', percent + "%");
|
||||
new_members_data = new_members_data.concat(data.members);
|
||||
if(page_number < maximum_member_pages){
|
||||
importMembers(page_number + 1);
|
||||
}else{
|
||||
$("#import-progress .bar").css('width', '100%');
|
||||
importPlugins(0);
|
||||
}
|
||||
}
|
||||
}).fail(function(){
|
||||
$("#import-progress-text").html("Importing failed, click on start to try again.");
|
||||
$("#alert-msg").text("There was an unknown error");
|
||||
$(".alert-danger").removeClass("hide").show();
|
||||
clearTimeout(sto);
|
||||
})
|
||||
// sto = setTimeout("startCheckingMemberImportStatus()",700);
|
||||
}
|
||||
var plugins = ["patents","books", "projects", "researches", "honors", "diplomas", "experiences", "journalpapers", "conferencespapers"];
|
||||
var failed_plugins = [];
|
||||
|
@ -326,10 +354,11 @@
|
|||
member_status = (member.name == null ? "Importing plugins for id " + member.rss2_id : "Importing plugins for member " + member.name);
|
||||
$("#import-progress .bar").css('width', '0%');
|
||||
$("#import-progress-text").html(member_status + "<br/><div id='plugin_name'></div>");
|
||||
importplugin(member.rss2_id, 0,number)
|
||||
importplugin(member.rss2_id, 0, number, member.name);
|
||||
}
|
||||
|
||||
var importplugin = function(id,p,number){
|
||||
var importplugin = function(id,p,number,name){
|
||||
console.log(name);
|
||||
var plugin = plugins[p];
|
||||
$("#import-progress-text #plugin_name").html(plugin.charAt(0).toUpperCase() + plugin.slice(1));
|
||||
$.ajax({
|
||||
|
@ -351,7 +380,7 @@
|
|||
}
|
||||
}).fail(function(){
|
||||
failed_plugins.push(plugin);
|
||||
$("#alert-msg").text("There was an unknown error importing " + plugin + ".");
|
||||
$("#alert-msg").prepend("There was an unknown error importing " + plugin + " for " + (typeof name == "undefined" ? id : name) + ". <br/>");
|
||||
$(".alert-danger").removeClass("hide").show();
|
||||
if(p != plugins.length - 1){
|
||||
importplugin(id, p + 1, number);
|
||||
|
@ -359,6 +388,7 @@
|
|||
if((number + 1) != new_members_data.length){
|
||||
importPlugins(number + 1);
|
||||
}else{
|
||||
$("#import-progress .bar").css('width', '100%');
|
||||
$("#import-progress-text").html("Importing members finished.");
|
||||
}
|
||||
}
|
||||
|
|
|
@ -22,4 +22,7 @@ gem "site_menu_widget", git: 'http://gitlab.tp.rulingcom.com/saurabh/site-menu-w
|
|||
gem "breadcrumb_widget", git: "http://gitlab.tp.rulingcom.com/saurabh/breadcrumb-widget.git"
|
||||
|
||||
#desktop
|
||||
gem "orbit_4_5_desktop", git: 'http://gitlab.tp.rulingcom.com/ray/orbit-4-5-desktop.git'
|
||||
gem "orbit_4_5_desktop", path: '/Volumes/MyData/github/orbit4.5/orbit-4-5-desktop'
|
||||
|
||||
|
||||
gem "test_for_plugin", path: "/Volumes/MyData/github/orbit4.5/new_modules/test_for_plugin"
|
||||
|
|
|
@ -223,6 +223,7 @@ Orbit::Application.routes.draw do
|
|||
post "import/rss2_album_image" => "import#rss2_album_image"
|
||||
post "import/rss2_links" => "import#rss2_links"
|
||||
post "import/rss2_members" => "import#rss2_members"
|
||||
post "import/rss2_members_info" => "import#rss2_members_info"
|
||||
get "import/import_plugin" => "import#import_plugin"
|
||||
end
|
||||
|
||||
|
|
|
@ -1,28 +1,63 @@
|
|||
<!DOCTYPE HTML>
|
||||
<html lang="en-US">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title></title>
|
||||
<link rel="stylesheet" type="text/css" href="stylesheets/error-pages.css" media="all"/>
|
||||
</head>
|
||||
<body>
|
||||
<style type="text/css">
|
||||
body {
|
||||
margin: 0;
|
||||
padding: 40px 0 0 0;
|
||||
background-color: #F3F3F3;
|
||||
}
|
||||
</style>
|
||||
<!-- Error Pages Start Here -->
|
||||
<div id="error-page">
|
||||
<div class="card">
|
||||
<div class="figure code-404"></div>
|
||||
<div class="message">
|
||||
<h1>Page not found!</h1>
|
||||
<p>The page you were looking for doesn’t exist.</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Error Pages End Here -->
|
||||
</body>
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh-tw">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>Page not found</title>
|
||||
<link href='http://fonts.googleapis.com/css?family=Roboto' rel='stylesheet' type='text/css'>
|
||||
</head>
|
||||
<body>
|
||||
<style>
|
||||
::selection {
|
||||
color: #fff;
|
||||
background: #040114;
|
||||
}
|
||||
body {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
font-family: 'Roboto', sans-serif;
|
||||
font-size: 100%;
|
||||
background: url(/error_image/404.jpg) center center fixed no-repeat;
|
||||
background-size: cover;
|
||||
background-color: #000;
|
||||
}
|
||||
#error-page {
|
||||
min-height: 768px;
|
||||
}
|
||||
.message {
|
||||
text-align: center;
|
||||
position: absolute;
|
||||
left: 50%;
|
||||
top: 25%;
|
||||
margin-left: -175px;
|
||||
}
|
||||
.message h1 {
|
||||
margin: 0 0.2em 0 0;
|
||||
color: #fff;
|
||||
font-size: 8.5em;
|
||||
font-weight: normal;
|
||||
}
|
||||
.message h2 {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
color: #fff;
|
||||
}
|
||||
.message p {
|
||||
color: #fff;
|
||||
}
|
||||
.home {
|
||||
color: #fff;
|
||||
}
|
||||
a.home:hover {
|
||||
text-decoration: none;
|
||||
}
|
||||
</style>
|
||||
<div id="error-page">
|
||||
<section class="message">
|
||||
<h1>404</h1>
|
||||
<h2>Page not found</h2>
|
||||
<p>Sorry, it seems like you're in the wrong orbit, <br>
|
||||
get back to your home planet by <a class="home" href="/">clicking here!</a></p>
|
||||
</section>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
Binary file not shown.
After Width: | Height: | Size: 622 KiB |
Loading…
Reference in New Issue