new plugins added for desktop
This commit is contained in:
parent
42615f02ea
commit
c2f223b82c
|
@ -22,3 +22,4 @@ uploads/**/*
|
||||||
.sass-cache/*
|
.sass-cache/*
|
||||||
*.supported
|
*.supported
|
||||||
mongoid.yml
|
mongoid.yml
|
||||||
|
*.
|
||||||
|
|
|
@ -1,15 +0,0 @@
|
||||||
require 'mime/types'
|
|
||||||
|
|
||||||
class DesktopPublicationsController< ApplicationController
|
|
||||||
def books
|
|
||||||
render "desktop/books", :layout => false
|
|
||||||
end
|
|
||||||
|
|
||||||
def books_list
|
|
||||||
render "desktop/books/list", :layout => false
|
|
||||||
end
|
|
||||||
|
|
||||||
def books_add
|
|
||||||
render "desktop/books/add", :layout => false
|
|
||||||
end
|
|
||||||
end
|
|
|
@ -1,26 +0,0 @@
|
||||||
class DesktopResearchController< ApplicationController
|
|
||||||
|
|
||||||
def research_d
|
|
||||||
render "desktop/research_d", :layout=>false
|
|
||||||
end
|
|
||||||
def research_d_list
|
|
||||||
render "desktop/research_domain/list", :layout=>false
|
|
||||||
end
|
|
||||||
|
|
||||||
def research_d_add
|
|
||||||
render "desktop/research_domain/add", :layout=>false
|
|
||||||
end
|
|
||||||
|
|
||||||
def research_p
|
|
||||||
render "desktop/research_p", :layout=>false
|
|
||||||
end
|
|
||||||
def research_p_list
|
|
||||||
render "desktop/research_project/list", :layout=>false
|
|
||||||
end
|
|
||||||
|
|
||||||
def research_p_add
|
|
||||||
render "desktop/research_project/add", :layout=>false
|
|
||||||
end
|
|
||||||
|
|
||||||
|
|
||||||
end
|
|
|
@ -1,87 +0,0 @@
|
||||||
<div class="toolbar hh1">
|
|
||||||
<div class="fn_g hp">
|
|
||||||
<button class="fn_btn hh1 thmc2 thmtxt">Save</button>
|
|
||||||
<button class="fn_btn hh1 admbg2">Cancel</button>
|
|
||||||
</div>
|
|
||||||
<div class="hh1 hp sdm">
|
|
||||||
<div class="sdm_t hh1">Year</div>
|
|
||||||
<div class="admbg sdm_o">
|
|
||||||
<ul>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">2012</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">2011</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">2010</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">2009</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">2008</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">2007</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">2006</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">2005</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">2004</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">2003</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">2002</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">2001</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="hh1 hp sdm">
|
|
||||||
<div class="sdm_t hh1">Language</div>
|
|
||||||
<div class="admbg sdm_o">
|
|
||||||
<ul>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">English</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">Chinese</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="hh1 hp sdm">
|
|
||||||
<div class="sdm_t hh1"><span class="icon-question-sign"></span></div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div id="paper_add" class="tinycanvas vp">
|
|
||||||
<div class="scrollbar sb_h vp"><div class="track"><div class="thumb thmc2"><div class="end"></div></div></div></div>
|
|
||||||
<div class="viewport">
|
|
||||||
<div class="overview">
|
|
||||||
<div class="s_grid_con s_form">
|
|
||||||
<ul>
|
|
||||||
<li class="s_grid_row"><input type="radio" name="" value="Books" />Books
|
|
||||||
<input type="radio" name="" value="Chapter" /> Chapter</li>
|
|
||||||
<li class="s_grid_row"><textarea class="s_grid_6 s_grid" name="" id="">Book Title</textarea></li>
|
|
||||||
<li class="s_grid_row"><textarea class="s_grid_6 s_grid" name="" id="" rows="10">Chapters and sections</textarea></li>
|
|
||||||
<li class="s_grid_row"><input class="s_grid s_grid_1" type="text" value="page"> ~ <input class="s_grid s_grid_1" type="text" value="page"><input class="s_grid s_grid_2" type="text" value="Publisher"></li>
|
|
||||||
<li class="s_grid_row"><input class="s_grid s_grid_2" type="text" value="Location"><input class="s_grid s_grid_2" type="text" value="Chief editor"></li>
|
|
||||||
<li class="s_grid_row"><input class="s_grid s_grid_3" type="text" value="ISSN"></li> <li class="s_grid_row"><label class="s_grid_2 s_grid" for="">Reference URL</label><input class="s_grid_4 s_grid" type="text" value="www.sample.com"></li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<div class="s_grid_con s_form">
|
|
||||||
<ul>
|
|
||||||
<li class="s_grid_row"><textarea class="s_grid s_grid_6" name="" id="">Author</textarea><span class="icon-plus input_append"></span></li>
|
|
||||||
<li class="s_grid_row">
|
|
||||||
<select name="" id="" class="s_grid s_grid_4">
|
|
||||||
<option value="">Author Type</option>
|
|
||||||
<option value="">First Author</option>
|
|
||||||
<option value="">Corresponding Author</option>
|
|
||||||
<option value="">Second Author</option>
|
|
||||||
<option value="">Third Author</option>
|
|
||||||
<option value="">Fourth Author</option>
|
|
||||||
</select>
|
|
||||||
<select name="" id="" class="s_grid s_grid_2">
|
|
||||||
<option value="">Status</option>
|
|
||||||
<option value="">Published</option>
|
|
||||||
<option value="">Pending</option>
|
|
||||||
<option value="">Writing</option>
|
|
||||||
</select>
|
|
||||||
</li>
|
|
||||||
<li class="s_grid_row"><label class="s_grid s_grid_2" for="">Date of Publication</label><input class="s_grid s_grid_4" type="text" value="2012 / 05 / 01"></li>
|
|
||||||
<li class="s_grid_row"><input class="s_grid s_grid_6" type="text" value="Tags"><span class="icon-plus input_append"></li>
|
|
||||||
<li class="s_grid_row"><input class="s_grid s_grid_6" type="text" value="Associated Project"><span class="icon-plus input_append"></span></li>
|
|
||||||
<li class="s_grid_row"><label class="s_grid s_grid_2" for="">Abstract</label><input type="file"></li>
|
|
||||||
<li class="s_grid_row"><label class="s_grid s_grid_2" for="">Full Text</label><input type="file"></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<div class="s_grid_con s_form">
|
|
||||||
<ul>
|
|
||||||
<li class="s_grid_row"><textarea name="" id="" rows="26" class="s_grid s_grid_6">Abstract</textarea></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
|
@ -1,72 +0,0 @@
|
||||||
<div class="toolbar hh1">
|
|
||||||
<div class="hh1 hp sdm">
|
|
||||||
<div class="sdm_t hh1"><span class="icon-check"></span></div>
|
|
||||||
<div class="admbg sdm_o">
|
|
||||||
<ul id="journal_selection_options">
|
|
||||||
<li><a class="hp hh1 admtxt" href="all">All</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="none">None</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="hh1 hp sdm">
|
|
||||||
<div class="sdm_t hh1">More</div>
|
|
||||||
<div class="admbg sdm_o">
|
|
||||||
<ul>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">Delete</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">Tag</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="hh1 hp sdm">
|
|
||||||
<div class="sdm_t hh1">Tag</div>
|
|
||||||
<div class="admbg sdm_o">
|
|
||||||
<ul>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">All</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">Starred</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">MIT</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="hh1 hp sdm">
|
|
||||||
<div class="sdm_t hh1">Status</div>
|
|
||||||
<div class="admbg sdm_o">
|
|
||||||
<ul>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">All</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">Published</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">Pending</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="hh1 hp sdm">
|
|
||||||
<div class="sdm_t hh1">View</div>
|
|
||||||
<div class="admbg sdm_o">
|
|
||||||
<ul id="journal_view_selection">
|
|
||||||
<li><a class="hp hh1 admtxt" href="journal">Journal</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="title">Title</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="file">File</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="keywords">Keywords</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="abstract">Abstract</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="hh1 hp sdm">
|
|
||||||
<div class="sdm_t hh1">Share</div>
|
|
||||||
<div class="admbg sdm_o">
|
|
||||||
<ul>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">Full</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">Abstract</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">Friends</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">Private</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">Group</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="hh1 hp sdm">
|
|
||||||
<div class="sdm_t hh1"><span class="icon-question-sign"></span></div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="overview" content-layout="datalist" base-width="300">
|
|
||||||
|
|
||||||
</div>
|
|
||||||
|
|
|
@ -1,75 +0,0 @@
|
||||||
<div class="toolbar hh1">
|
|
||||||
<div class="hh1 hp sdm">
|
|
||||||
<div class="sdm_t hh1"><span class="icon-check"></span></div>
|
|
||||||
<div class="admbg sdm_o">
|
|
||||||
<ul id="journal_selection_options">
|
|
||||||
<li><a class="hp hh1 admtxt" href="all">All</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="none">None</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="hh1 hp sdm">
|
|
||||||
<div class="sdm_t hh1">More</div>
|
|
||||||
<div class="admbg sdm_o">
|
|
||||||
<ul>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">Delete</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">Tag</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="hh1 hp sdm">
|
|
||||||
<div class="sdm_t hh1">Tag</div>
|
|
||||||
<div class="admbg sdm_o">
|
|
||||||
<ul>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">All</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">Starred</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">MIT</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="hh1 hp sdm">
|
|
||||||
<div class="sdm_t hh1">Status</div>
|
|
||||||
<div class="admbg sdm_o">
|
|
||||||
<ul>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">All</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">Published</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">Pending</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="hh1 hp sdm">
|
|
||||||
<div class="sdm_t hh1">View</div>
|
|
||||||
<div class="admbg sdm_o">
|
|
||||||
<ul id="journal_view_selection">
|
|
||||||
<li><a class="hp hh1 admtxt" href="journal">Journal</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="title">Title</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="file">File</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="keywords">Keywords</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="abstract">Abstract</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="hh1 hp sdm">
|
|
||||||
<div class="sdm_t hh1">Share</div>
|
|
||||||
<div class="admbg sdm_o">
|
|
||||||
<ul>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">Full</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">Abstract</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">Friends</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">Private</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">Group</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="hh1 hp sdm">
|
|
||||||
<div class="sdm_t hh1"><span class="icon-question-sign"></span></div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div id="paper_list" class="tinycanvas vp">
|
|
||||||
<div class="scrollbar sb_h vp"><div class="track"><div class="thumb thmc2"><div class="end"></div></div></div></div>
|
|
||||||
<div class="viewport">
|
|
||||||
<div class="overview">
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
|
@ -15,23 +15,23 @@
|
||||||
|
|
||||||
<li class="dock_item"><a callback-method='initializeConferencePapers' href="<%= panel_personal_conference_desktop_conference_window_path %>" class="widget_fn wh2 hh2" id='d_conference_p' custom-load="conference" onclick="return false;"><span class="widget_icon"><img src="" alt="Conference Papers" id="conference_p_icon" width="30" height="30"/></span></a></li>
|
<li class="dock_item"><a callback-method='initializeConferencePapers' href="<%= panel_personal_conference_desktop_conference_window_path %>" class="widget_fn wh2 hh2" id='d_conference_p' custom-load="conference" onclick="return false;"><span class="widget_icon"><img src="" alt="Conference Papers" id="conference_p_icon" width="30" height="30"/></span></a></li>
|
||||||
|
|
||||||
<li class="dock_item"><a callback-method='initializeBooks' href="<%= desktop_publications_books_path %>" class="widget_fn wh2 hh2" id='d_books' onclick="return false;"><span class="widget_icon"><img src="" alt="Books" id="books_icon" width="30" height="30"/></span></a></li>
|
<li class="dock_item"><a callback-method='initializePersonalBook' href="<%= panel_personal_book_desktop_books_window_path %>" class="widget_fn wh2 hh2" id='d_books' onclick="return false;"><span class="widget_icon"><img src="" alt="Books" id="books_icon" width="30" height="30"/></span></a></li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
<li class="d_cate"><a callback-method='' href="" class="widget_fn wh2 hh2" id='d_research' onclick="return false;"><span class="widget_icon"><img src="" alt="Research" id="research_icon" width="30" height="30"/></span></a>
|
<li class="d_cate"><a callback-method='' href="" class="widget_fn wh2 hh2" id='d_research' onclick="return false;"><span class="widget_icon"><img src="" alt="Research" id="research_icon" width="30" height="30"/></span></a>
|
||||||
<ul class="dock_child hh2 thmc4" style="width: 240px;">
|
<ul class="dock_child hh2 thmc4" style="width: 240px;">
|
||||||
<li class="dock_item"><a callback-method='initializeResearchDomain' href="<%= desktop_research_research_d_path %>" class="widget_fn wh2 hh2" id='d_research_d' onclick="return false;"><span class="widget_icon"><img src="" alt="Research Domain" id="research_d_icon" width="30" height="30"/></span></a></li>
|
<li class="dock_item"><a callback-method='initializePersonalResearch' href="<%= panel_personal_research_desktop_research_window_path %>" class="widget_fn wh2 hh2" id='d_research_d' onclick="return false;"><span class="widget_icon"><img src="" alt="Research Domain" id="research_d_icon" width="30" height="30"/></span></a></li>
|
||||||
<li class="dock_item"><a callback-method='initializeResearchProject' href="<%= desktop_research_research_p_path %>" class="widget_fn wh2 hh2" id='d_research_p' onclick="return false;"><span class="widget_icon"><img src="" alt="Research Project" id="research_p_icon" width="30" height="30"/></span></a></li>
|
<li class="dock_item"><a callback-method='initializePersonalProject' href="<%= panel_personal_project_desktop_project_window_path %>" class="widget_fn wh2 hh2" id='d_research_p' onclick="return false;"><span class="widget_icon"><img src="" alt="Research Project" id="research_p_icon" width="30" height="30"/></span></a></li>
|
||||||
<li class="dock_item"><a callback-method='' href="" class="widget_fn wh2 hh2" id='d_patents' onclick="return false;"><span class="widget_icon"><img src="" alt="Patents" id="patents_icon" width="30" height="30"/></span></a></li>
|
<li class="dock_item"><a callback-method='initializePersonalPatent' href="<%= panel_personal_patent_desktop_patent_window_path %>" class="widget_fn wh2 hh2" id='d_patents' onclick="return false;"><span class="widget_icon"><img src="" alt="Patents" id="patents_icon" width="30" height="30"/></span></a></li>
|
||||||
<li class="dock_item"><a callback-method='' href="labs" class="widget_fn wh2 hh2" id='d_labs' onclick="return false;"><span class="widget_icon"><img src="" alt="Labs" id="labs_icon" width="30" height="30"/></span></a></li>
|
<li class="dock_item"><a callback-method='initializePersonalLab' href="<%= panel_personal_lab_desktop_lab_window_path %>" class="widget_fn wh2 hh2" id='d_labs' onclick="return false;"><span class="widget_icon"><img src="" alt="Labs" id="labs_icon" width="30" height="30"/></span></a></li>
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
<li class="d_cate"><a callback-method='' href="" class="widget_fn wh2 hh2" id='d_experience' onclick="return false;"><span class="widget_icon"><img src="" alt="Experience" id="experience_icon" width="30" height="30"/></span></a>
|
<li class="d_cate"><a callback-method='' href="" class="widget_fn wh2 hh2" id='d_experience' onclick="return false;"><span class="widget_icon"><img src="" alt="Experience" id="experience_icon" width="30" height="30"/></span></a>
|
||||||
<ul class="dock_child hh2 thmc4" style="width: 300px;">
|
<ul class="dock_child hh2 thmc4" style="width: 300px;">
|
||||||
<li class="dock_item"><a callback-method='' href="working" class="widget_fn wh2 hh2" id='d_working' onclick="return false;"><span class="widget_icon"><img src="" alt="Working" id="working_icon" width="30" height="30"/></span></a></li>
|
<li class="dock_item"><a callback-method='initializePersonalExperience' href="<%= panel_personal_experience_desktop_experience_window_path %>" class="widget_fn wh2 hh2" id='d_working' onclick="return false;"><span class="widget_icon"><img src="" alt="Working" id="working_icon" width="30" height="30"/></span></a></li>
|
||||||
<li class="dock_item"><a callback-method='' href="education" class="widget_fn wh2 hh2" id='d_education' onclick="return false;"><span class="widget_icon"><img src="" alt="Education" id="education_icon" width="30" height="30"/></span></a></li>
|
<li class="dock_item"><a callback-method='initializePersonalDiploma' href="<%= panel_personal_diploma_desktop_diploma_window_path %>" class="widget_fn wh2 hh2" id='d_education' onclick="return false;"><span class="widget_icon"><img src="" alt="Education" id="education_icon" width="30" height="30"/></span></a></li>
|
||||||
<li class="dock_item"><a callback-method='' href="honors" class="widget_fn wh2 hh2" id='d_honors' onclick="return false;"><span class="widget_icon"><img src="" alt="Honors" id="honors_icon" width="30" height="30"/></span></a></li>
|
<li class="dock_item"><a callback-method='initializePersonalHonor' href="<%= panel_personal_honor_desktop_honor_window_path %>" class="widget_fn wh2 hh2" id='d_honors' onclick="return false;"><span class="widget_icon"><img src="" alt="Honors" id="honors_icon" width="30" height="30"/></span></a></li>
|
||||||
<li class="dock_item"><a callback-method='' href="activities" class="widget_fn wh2 hh2" id='d_activities' onclick="return false;"><span class="widget_icon"><img src="" alt="Activities" id="activities_icon" width="30" height="30"/></span></a></li>
|
<li class="dock_item"><a callback-method='' href="activities" class="widget_fn wh2 hh2" id='d_activities' onclick="return false;"><span class="widget_icon"><img src="" alt="Activities" id="activities_icon" width="30" height="30"/></span></a></li>
|
||||||
<li class="dock_item"><a callback-method='' href="clubs" class="widget_fn wh2 hh2" id='d_clubs' onclick="return false;"><span class="widget_icon"><img src="" alt="Clubs" id="clubs_icon" width="30" height="30"/></span></a></li>
|
<li class="dock_item"><a callback-method='' href="clubs" class="widget_fn wh2 hh2" id='d_clubs' onclick="return false;"><span class="widget_icon"><img src="" alt="Clubs" id="clubs_icon" width="30" height="30"/></span></a></li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
|
@ -1,107 +0,0 @@
|
||||||
<div class="toolbar hh1">
|
|
||||||
<div class="fn_g hp">
|
|
||||||
<button class="fn_btn hh1 thmc2 thmtxt">Save</button>
|
|
||||||
<button class="fn_btn hh1 admbg2">Cancel</button>
|
|
||||||
</div>
|
|
||||||
<div class="hh1 hp sdm">
|
|
||||||
<div class="sdm_t hh1">Year</div>
|
|
||||||
<div class="admbg sdm_o">
|
|
||||||
<ul>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">2012</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">2011</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">2010</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">2009</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">2008</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">2007</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">2006</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">2005</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">2004</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">2003</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">2002</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">2001</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="hh1 hp sdm">
|
|
||||||
<div class="sdm_t hh1">Language</div>
|
|
||||||
<div class="admbg sdm_o">
|
|
||||||
<ul>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">English</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">Chinese</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="hh1 hp sdm">
|
|
||||||
<div class="sdm_t hh1"><span class="icon-question-sign"></span></div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div id="paper_add" class="tinycanvas vp">
|
|
||||||
<div class="scrollbar sb_h vp"><div class="track"><div class="thumb thmc2"><div class="end"></div></div></div></div>
|
|
||||||
<div class="viewport">
|
|
||||||
<div class="overview">
|
|
||||||
<div class="s_grid_con s_form">
|
|
||||||
<ul>
|
|
||||||
<li class="s_grid_row"><textarea class="s_grid_6 s_grid" name="" id="">Conference Title</textarea></li>
|
|
||||||
<li class="s_grid_row">
|
|
||||||
<label>Paper type</label><input type="radio" name="" value="Books" />Oral<input type="radio" name="" value="Chapter" />Poster</li>
|
|
||||||
<li class="s_grid_row"><label>Conference time</label></li>
|
|
||||||
|
|
||||||
<li class="s_grid_row"><select name="" id="" class="s_grid s_grid_1">
|
|
||||||
<option value=""></option>
|
|
||||||
</select>
|
|
||||||
<label class="s_grid s_grid_1">Year</label>
|
|
||||||
<select name="" id="" class="s_grid s_grid_1">
|
|
||||||
<option value=""></option>
|
|
||||||
</select>
|
|
||||||
<label class="s_grid s_grid_1">Month</label>
|
|
||||||
<select name="" id="" class="s_grid s_grid_1">
|
|
||||||
<option value=""></option>
|
|
||||||
</select>
|
|
||||||
<label class="s_grid s_grid_1">Day</label>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="s_grid_row"><input class="s_grid s_grid_2" type="text" value="Location"><input class="s_grid s_grid_2" type="text" value="Sponsor"></li>
|
|
||||||
<li class="s_grid_row"><label class="s_grid_2 s_grid" for="">Reference URL</label><input class="s_grid_4 s_grid" type="text" value="www.sample.com"></li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<div class="s_grid_con s_form">
|
|
||||||
<ul>
|
|
||||||
<li class="s_grid_row"><textarea class="s_grid s_grid_6" name="" id="">Author</textarea><span class="icon-plus input_append"></span></li>
|
|
||||||
<li class="s_grid_row">
|
|
||||||
<select name="" id="" class="s_grid s_grid_4">
|
|
||||||
<option value="">Author Type</option>
|
|
||||||
<option value="">First Author</option>
|
|
||||||
<option value="">Corresponding Author</option>
|
|
||||||
<option value="">Second Author</option>
|
|
||||||
<option value="">Third Author</option>
|
|
||||||
<option value="">Fourth Author</option>
|
|
||||||
</select>
|
|
||||||
<select name="" id="" class="s_grid s_grid_2">
|
|
||||||
<option value="">Status</option>
|
|
||||||
<option value="">Published</option>
|
|
||||||
<option value="">Pending</option>
|
|
||||||
<option value="">Writing</option>
|
|
||||||
</select>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="s_grid_row"><label class="s_grid s_grid_2" for="">Date of Publication</label><input class="s_grid s_grid_4" type="text" value="2012 / 05 / 01"></li>
|
|
||||||
|
|
||||||
<li class="s_grid_row"><input class="s_grid s_grid_6" type="text" value="Tags"><span class="icon-plus input_append"></li>
|
|
||||||
<li class="s_grid_row"><input class="s_grid s_grid_6" type="text" value="Keywords"><span class="icon-plus input_append"></li>
|
|
||||||
<li class="s_grid_row"><input class="s_grid s_grid_6" type="text" value="Associated Project"><span class="icon-plus input_append"></span></li>
|
|
||||||
<li class="s_grid_row"><label class="s_grid s_grid_2" for="">Abstract</label><input type="file"></li>
|
|
||||||
<li class="s_grid_row"><label class="s_grid s_grid_2" for="">Full Text</label><input type="file"></li>
|
|
||||||
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<div class="s_grid_con s_form">
|
|
||||||
<ul>
|
|
||||||
<li class="s_grid_row"><textarea name="" id="" rows="20" class="s_grid s_grid_6">Abstract</textarea></li>
|
|
||||||
<li class="s_grid_row"><textarea name="" id="" rows="6" class="s_grid s_grid_6">Note</textarea></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
|
@ -1,75 +0,0 @@
|
||||||
<div class="toolbar hh1">
|
|
||||||
<div class="hh1 hp sdm">
|
|
||||||
<div class="sdm_t hh1"><span class="icon-check"></span></div>
|
|
||||||
<div class="admbg sdm_o">
|
|
||||||
<ul id="journal_selection_options">
|
|
||||||
<li><a class="hp hh1 admtxt" href="all">All</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="none">None</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="hh1 hp sdm">
|
|
||||||
<div class="sdm_t hh1">More</div>
|
|
||||||
<div class="admbg sdm_o">
|
|
||||||
<ul>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">Delete</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">Tag</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="hh1 hp sdm">
|
|
||||||
<div class="sdm_t hh1">Tag</div>
|
|
||||||
<div class="admbg sdm_o">
|
|
||||||
<ul>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">All</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">Starred</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">MIT</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="hh1 hp sdm">
|
|
||||||
<div class="sdm_t hh1">Status</div>
|
|
||||||
<div class="admbg sdm_o">
|
|
||||||
<ul>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">All</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">Published</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">Pending</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="hh1 hp sdm">
|
|
||||||
<div class="sdm_t hh1">View</div>
|
|
||||||
<div class="admbg sdm_o">
|
|
||||||
<ul id="journal_view_selection">
|
|
||||||
<li><a class="hp hh1 admtxt" href="journal">Journal</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="title">Title</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="file">File</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="keywords">Keywords</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="abstract">Abstract</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="hh1 hp sdm">
|
|
||||||
<div class="sdm_t hh1">Share</div>
|
|
||||||
<div class="admbg sdm_o">
|
|
||||||
<ul>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">Full</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">Abstract</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">Friends</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">Private</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">Group</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="hh1 hp sdm">
|
|
||||||
<div class="sdm_t hh1"><span class="icon-question-sign"></span></div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div id="paper_list" class="tinycanvas vp">
|
|
||||||
<div class="scrollbar sb_h vp"><div class="track"><div class="thumb thmc2"><div class="end"></div></div></div></div>
|
|
||||||
<div class="viewport">
|
|
||||||
<div class="overview">
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
|
@ -1,107 +0,0 @@
|
||||||
<div class="toolbar hh1">
|
|
||||||
<div class="fn_g hp">
|
|
||||||
<button class="fn_btn hh1 thmc2 thmtxt">Save</button>
|
|
||||||
<button class="fn_btn hh1 admbg2">Cancel</button>
|
|
||||||
</div>
|
|
||||||
<div class="hh1 hp sdm">
|
|
||||||
<div class="sdm_t hh1">Year</div>
|
|
||||||
<div class="admbg sdm_o">
|
|
||||||
<ul>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">2012</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">2011</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">2010</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">2009</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">2008</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">2007</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">2006</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">2005</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">2004</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">2003</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">2002</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">2001</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="hh1 hp sdm">
|
|
||||||
<div class="sdm_t hh1">Language</div>
|
|
||||||
<div class="admbg sdm_o">
|
|
||||||
<ul>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">English</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">Chinese</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="hh1 hp sdm">
|
|
||||||
<div class="sdm_t hh1"><span class="icon-question-sign"></span></div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div id="paper_add" class="tinycanvas vp">
|
|
||||||
<div class="scrollbar sb_h vp"><div class="track"><div class="thumb thmc2"><div class="end"></div></div></div></div>
|
|
||||||
<div class="viewport">
|
|
||||||
<div class="overview">
|
|
||||||
<div class="s_grid_con s_form">
|
|
||||||
<ul>
|
|
||||||
<li class="s_grid_row"><textarea class="s_grid_6 s_grid" name="" id="">Conference Title</textarea></li>
|
|
||||||
<li class="s_grid_row">
|
|
||||||
<label>Paper type</label><input type="radio" name="" value="Books" />Oral<input type="radio" name="" value="Chapter" />Poster</li>
|
|
||||||
<li class="s_grid_row"><label>Conference time</label></li>
|
|
||||||
|
|
||||||
<li class="s_grid_row"><select name="" id="" class="s_grid s_grid_1">
|
|
||||||
<option value=""></option>
|
|
||||||
</select>
|
|
||||||
<label class="s_grid s_grid_1">Year</label>
|
|
||||||
<select name="" id="" class="s_grid s_grid_1">
|
|
||||||
<option value=""></option>
|
|
||||||
</select>
|
|
||||||
<label class="s_grid s_grid_1">Month</label>
|
|
||||||
<select name="" id="" class="s_grid s_grid_1">
|
|
||||||
<option value=""></option>
|
|
||||||
</select>
|
|
||||||
<label class="s_grid s_grid_1">Day</label>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="s_grid_row"><input class="s_grid s_grid_2" type="text" value="Location"><input class="s_grid s_grid_2" type="text" value="Sponsor"></li>
|
|
||||||
<li class="s_grid_row"><label class="s_grid_2 s_grid" for="">Reference URL</label><input class="s_grid_4 s_grid" type="text" value="www.sample.com"></li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<div class="s_grid_con s_form">
|
|
||||||
<ul>
|
|
||||||
<li class="s_grid_row"><textarea class="s_grid s_grid_6" name="" id="">Author</textarea><span class="icon-plus input_append"></span></li>
|
|
||||||
<li class="s_grid_row">
|
|
||||||
<select name="" id="" class="s_grid s_grid_4">
|
|
||||||
<option value="">Author Type</option>
|
|
||||||
<option value="">First Author</option>
|
|
||||||
<option value="">Corresponding Author</option>
|
|
||||||
<option value="">Second Author</option>
|
|
||||||
<option value="">Third Author</option>
|
|
||||||
<option value="">Fourth Author</option>
|
|
||||||
</select>
|
|
||||||
<select name="" id="" class="s_grid s_grid_2">
|
|
||||||
<option value="">Status</option>
|
|
||||||
<option value="">Published</option>
|
|
||||||
<option value="">Pending</option>
|
|
||||||
<option value="">Writing</option>
|
|
||||||
</select>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="s_grid_row"><label class="s_grid s_grid_2" for="">Date of Publication</label><input class="s_grid s_grid_4" type="text" value="2012 / 05 / 01"></li>
|
|
||||||
|
|
||||||
<li class="s_grid_row"><input class="s_grid s_grid_6" type="text" value="Tags"><span class="icon-plus input_append"></li>
|
|
||||||
<li class="s_grid_row"><input class="s_grid s_grid_6" type="text" value="Keywords"><span class="icon-plus input_append"></li>
|
|
||||||
<li class="s_grid_row"><input class="s_grid s_grid_6" type="text" value="Associated Project"><span class="icon-plus input_append"></span></li>
|
|
||||||
<li class="s_grid_row"><label class="s_grid s_grid_2" for="">Abstract</label><input type="file"></li>
|
|
||||||
<li class="s_grid_row"><label class="s_grid s_grid_2" for="">Full Text</label><input type="file"></li>
|
|
||||||
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<div class="s_grid_con s_form">
|
|
||||||
<ul>
|
|
||||||
<li class="s_grid_row"><textarea name="" id="" rows="20" class="s_grid s_grid_6">Abstract</textarea></li>
|
|
||||||
<li class="s_grid_row"><textarea name="" id="" rows="6" class="s_grid s_grid_6">Note</textarea></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
|
@ -1,75 +0,0 @@
|
||||||
<div class="toolbar hh1">
|
|
||||||
<div class="hh1 hp sdm">
|
|
||||||
<div class="sdm_t hh1"><span class="icon-check"></span></div>
|
|
||||||
<div class="admbg sdm_o">
|
|
||||||
<ul id="journal_selection_options">
|
|
||||||
<li><a class="hp hh1 admtxt" href="all">All</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="none">None</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="hh1 hp sdm">
|
|
||||||
<div class="sdm_t hh1">More</div>
|
|
||||||
<div class="admbg sdm_o">
|
|
||||||
<ul>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">Delete</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">Tag</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="hh1 hp sdm">
|
|
||||||
<div class="sdm_t hh1">Tag</div>
|
|
||||||
<div class="admbg sdm_o">
|
|
||||||
<ul>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">All</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">Starred</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">MIT</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="hh1 hp sdm">
|
|
||||||
<div class="sdm_t hh1">Status</div>
|
|
||||||
<div class="admbg sdm_o">
|
|
||||||
<ul>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">All</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">Published</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">Pending</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="hh1 hp sdm">
|
|
||||||
<div class="sdm_t hh1">View</div>
|
|
||||||
<div class="admbg sdm_o">
|
|
||||||
<ul id="journal_view_selection">
|
|
||||||
<li><a class="hp hh1 admtxt" href="journal">Journal</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="title">Title</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="file">File</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="keywords">Keywords</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="abstract">Abstract</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="hh1 hp sdm">
|
|
||||||
<div class="sdm_t hh1">Share</div>
|
|
||||||
<div class="admbg sdm_o">
|
|
||||||
<ul>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">Full</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">Abstract</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">Friends</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">Private</a></li>
|
|
||||||
<li><a class="hp hh1 admtxt" href="">Group</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="hh1 hp sdm">
|
|
||||||
<div class="sdm_t hh1"><span class="icon-question-sign"></span></div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div id="paper_list" class="tinycanvas vp">
|
|
||||||
<div class="scrollbar sb_h vp"><div class="track"><div class="thumb thmc2"><div class="end"></div></div></div></div>
|
|
||||||
<div class="viewport">
|
|
||||||
<div class="overview">
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
|
@ -268,21 +268,7 @@ Orbit::Application.routes.draw do
|
||||||
match '/desktop/widget_layout' => 'desktop#widget_layout'
|
match '/desktop/widget_layout' => 'desktop#widget_layout'
|
||||||
match '/desktop/temp_func/'=>'desktop#temp_func'
|
match '/desktop/temp_func/'=>'desktop#temp_func'
|
||||||
|
|
||||||
# namespace :desktop_publications do
|
|
||||||
match 'desktop_publications/books' => 'desktop_publications#books'
|
|
||||||
match 'desktop_publications/books_list'=>'desktop_publications#books_list'
|
|
||||||
match 'desktop_publications/books_add'=>'desktop_publications#books_add'
|
|
||||||
|
|
||||||
# namespace :desktop_research do
|
# namespace :desktop_research do
|
||||||
match 'desktop_research/research_d' => 'desktop_research#research_d'
|
|
||||||
match 'desktop_research/research_d_list/' => 'desktop_research#research_d_list'
|
|
||||||
match 'desktop_research/research_d_add' => 'desktop_research#research_d_add'
|
|
||||||
|
|
||||||
match 'desktop_research/research_p' => 'desktop_research#research_p'
|
|
||||||
match 'desktop_research/research_p_list/' => 'desktop_research#research_p_list'
|
|
||||||
match 'desktop_research/research_p_add' => 'desktop_research#research_p_add'
|
|
||||||
# end
|
|
||||||
|
|
||||||
match '/twitter/'=>'otheraccounts#twitter'
|
match '/twitter/'=>'otheraccounts#twitter'
|
||||||
match '/forgmail/'=>'otheraccounts#gmail'
|
match '/forgmail/'=>'otheraccounts#gmail'
|
||||||
match '/otheraccounts/getaccounts'=>'otheraccounts#getaccounts'
|
match '/otheraccounts/getaccounts'=>'otheraccounts#getaccounts'
|
||||||
|
|
|
@ -0,0 +1,42 @@
|
||||||
|
{
|
||||||
|
// The tab key will cycle through the settings when first created
|
||||||
|
// Visit http://wbond.net/sublime_packages/sftp/settings for help
|
||||||
|
|
||||||
|
// sftp, ftp or ftps
|
||||||
|
"type": "sftp",
|
||||||
|
|
||||||
|
"save_before_upload": true,
|
||||||
|
"upload_on_save": false,
|
||||||
|
"sync_down_on_open": false,
|
||||||
|
"sync_skip_deletes": false,
|
||||||
|
"confirm_downloads": false,
|
||||||
|
"confirm_sync": true,
|
||||||
|
"confirm_overwrite_newer": false,
|
||||||
|
|
||||||
|
"host": "tp.rulingcom.com",
|
||||||
|
"user": "rulingcom",
|
||||||
|
"password": "bjo4xjp6",
|
||||||
|
//"port": "22",
|
||||||
|
|
||||||
|
"remote_path": "/home/rulingcom/design_demo_site/orbit_d5",
|
||||||
|
"ignore_regexes": [
|
||||||
|
"\\.sublime-(project|workspace)", "sftp-config(-alt\\d?)?\\.json",
|
||||||
|
"sftp-settings\\.json", "/venv/", "\\.svn", "\\.hg", "\\.git",
|
||||||
|
"\\.bzr", "_darcs", "CVS", "\\.DS_Store", "Thumbs\\.db", "desktop\\.ini"
|
||||||
|
],
|
||||||
|
//"file_permissions": "664",
|
||||||
|
//"dir_permissions": "775",
|
||||||
|
|
||||||
|
//"extra_list_connections": 0,
|
||||||
|
|
||||||
|
"connect_timeout": 30,
|
||||||
|
//"keepalive": 120,
|
||||||
|
//"ftp_passive_mode": true,
|
||||||
|
//"ssh_key_file": "~/.ssh/id_rsa",
|
||||||
|
//"sftp_flags": ["-F", "/path/to/ssh_config"],
|
||||||
|
|
||||||
|
//"preserve_modification_times": false,
|
||||||
|
//"remote_time_offset_in_hours": 0,
|
||||||
|
//"remote_encoding": "utf-8",
|
||||||
|
//"remote_locale": "C",
|
||||||
|
}
|
158
vendor/built_in_modules/personal_book/app/assets/javascripts/personal_book/desktop/personal_books.js
vendored
Normal file
158
vendor/built_in_modules/personal_book/app/assets/javascripts/personal_book/desktop/personal_books.js
vendored
Normal file
|
@ -0,0 +1,158 @@
|
||||||
|
orbitDesktop.prototype.initializePersonalBook = function(target,url,cache){ // this init journal papers
|
||||||
|
this.initializePersonalBook.formCallback = function(data){
|
||||||
|
if(data.success){
|
||||||
|
o.notify(data.msg,"success");
|
||||||
|
o.sub_menu_item($("div[content-type=menu] a").eq(0));
|
||||||
|
}else{
|
||||||
|
o.notify(data.msg,"alert");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
this.initializePersonalBook.list = function(){ // to open list part in journal papers page
|
||||||
|
var journalData;
|
||||||
|
var bindHandlers = function(){ // to bind handlers for list page
|
||||||
|
|
||||||
|
}
|
||||||
|
bindHandlers();
|
||||||
|
|
||||||
|
var bindSecondaryHandlers = function(){
|
||||||
|
$("#journal_p div#paper_list a.icon-check-empty").click(function(){
|
||||||
|
if($(this).hasClass("icon-check-empty")){
|
||||||
|
$(this).switchClass("icon-check-empty","icon-check",0);
|
||||||
|
} else if($(this) .hasClass("icon-check")) {
|
||||||
|
$(this).switchClass("icon-check","icon-check-empty",0);
|
||||||
|
} else if($(this).hasClass("icon-star")){
|
||||||
|
$(this).removeClass("icon-star").addClass("icon-star-empty");
|
||||||
|
} else if($(this).hasClass("icon-star-empty")){
|
||||||
|
$(this).removeClass("icon-star-empty").addClass("icon-star");
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.initializePersonalBook.bookDelete = function(data,dom){
|
||||||
|
var parent = dom.parent().parent();
|
||||||
|
if(data.success){
|
||||||
|
parent.hide("slide",function(){parent.remove();});
|
||||||
|
o.notify(data.msg,"success");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
this.initializePersonalBook.cancelbook = function(){
|
||||||
|
o.highlight_sub_menu_item(0);
|
||||||
|
}
|
||||||
|
|
||||||
|
this.initializePersonalBook.editbook = function(){
|
||||||
|
o.highlight_sub_menu_item(1);
|
||||||
|
var uploadFiles = function(){
|
||||||
|
$('#add_plugin_file a.add').click(function(){
|
||||||
|
var new_id = $(this).prev().attr('value');
|
||||||
|
var old_id = new RegExp("new_writing_journal_files", "g");
|
||||||
|
$(this).prev().attr('value', parseInt(new_id) + 1);
|
||||||
|
var x = get_html(old_id,new_id);
|
||||||
|
var newfield = $(x);
|
||||||
|
$(this).parents('table').append(newfield);
|
||||||
|
newfield.find('.action a.delete').click(function(){
|
||||||
|
newfield.remove();
|
||||||
|
});
|
||||||
|
return false;
|
||||||
|
});
|
||||||
|
$('.action a.remove_existing_record').click(function(){
|
||||||
|
$(this).next('.should_destroy').attr('value', 1);
|
||||||
|
$("tr#add_plugin_file_" + $(this).prev().attr('value')).hide();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
var preData = function(){
|
||||||
|
$("#writing_journal_author_tokens").select2('data', JSON.parse($("#writing_journal_author_tokens").attr('data-pre')));
|
||||||
|
}
|
||||||
|
uploadFiles();
|
||||||
|
// preData();
|
||||||
|
}
|
||||||
|
|
||||||
|
this.initializePersonalBook.addbook = function(){ // to open add pages in journal papers page
|
||||||
|
var uploadFiles = function(){
|
||||||
|
$('#add_plugin_file a.add').click(function(){
|
||||||
|
var new_id = $(this).prev().attr('value');
|
||||||
|
var old_id = new RegExp("new_writing_journal_files", "g");
|
||||||
|
$(this).prev().attr('value', parseInt(new_id) + 1);
|
||||||
|
var x = get_html(old_id,new_id);
|
||||||
|
var newfield = $(x);
|
||||||
|
$(this).parents('table').append(newfield);
|
||||||
|
newfield.find('.action a.delete').click(function(){
|
||||||
|
newfield.remove();
|
||||||
|
});
|
||||||
|
return false;
|
||||||
|
});
|
||||||
|
$('.action a.remove_existing_record').click(function(){
|
||||||
|
$(this).next('.should_destroy').attr('value', 1);
|
||||||
|
$("tr#add_plugin_file_" + $(this).prev().attr('value')).hide();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
// console.log("hi");
|
||||||
|
var bindHandlers = function(){
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
bindHandlers();
|
||||||
|
uploadFiles();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
this.initializePersonalBook.coAuthorformCallback = function(data){
|
||||||
|
if(data.success){
|
||||||
|
o.notify(data.msg,"success");
|
||||||
|
o.sub_menu_item($("div[content-type=menu] a").eq(3));
|
||||||
|
}else{
|
||||||
|
o.notify(data.msg,"alert");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.initializePersonalBook.coauthor = function(){ // to open add pages in coauthor page
|
||||||
|
var bindHandlers = function(){ // to bind handlers for add page
|
||||||
|
|
||||||
|
}
|
||||||
|
bindHandlers();
|
||||||
|
}
|
||||||
|
this.initializePersonalBook.coauthorRelationForm = function(data){
|
||||||
|
if(data.success){
|
||||||
|
o.notify(data.msg,"success");
|
||||||
|
$("#co_author_relation_table").html(data.newvalue);
|
||||||
|
}else{
|
||||||
|
o.notify(data.msg,"alert");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.initializePersonalBook.coauthorRelationEditForm = function(data){
|
||||||
|
if(data.success){
|
||||||
|
o.notify(data.msg,"success");
|
||||||
|
var x = o.layout_data.generate_layout_html(data.newvalue);
|
||||||
|
$("div[container=true] div.overview").html(x.markup);
|
||||||
|
}else{
|
||||||
|
o.notify(data.msg,"alert");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.initializePersonalBook.allnone = function(d,o){
|
||||||
|
switch(o.attr("href")){
|
||||||
|
case "all":
|
||||||
|
$("div.overview a.icon-check-empty").removeClass("icon-check-empty").addClass("icon-check");
|
||||||
|
break;
|
||||||
|
case "none":
|
||||||
|
$("div.overview a.icon-check").removeClass("icon-check").addClass("icon-check-empty");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.initializePersonalBook.allnone = function(d,o){
|
||||||
|
switch(o.attr("href")){
|
||||||
|
case "all":
|
||||||
|
$("div.overview a.icon-check-empty").removeClass("icon-check-empty").addClass("icon-check");
|
||||||
|
break;
|
||||||
|
case "none":
|
||||||
|
$("div.overview a.icon-check").removeClass("icon-check").addClass("icon-check-empty");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
|
1
vendor/built_in_modules/personal_book/app/assets/javascripts/personal_book/personal_book.js
vendored
Normal file
1
vendor/built_in_modules/personal_book/app/assets/javascripts/personal_book/personal_book.js
vendored
Normal file
|
@ -0,0 +1 @@
|
||||||
|
//= require_tree ./personal_book/desktop
|
|
@ -0,0 +1,73 @@
|
||||||
|
class Panel::PersonalBook::Desktop::PersonalBooksController < ApplicationController
|
||||||
|
|
||||||
|
def index
|
||||||
|
@writing_books = WritingBook.where(create_user_id: current_user.id)
|
||||||
|
@view_by = params[:view]
|
||||||
|
page = params[:page]
|
||||||
|
page ||= 1
|
||||||
|
|
||||||
|
@per_column = 5
|
||||||
|
|
||||||
|
case @view_by
|
||||||
|
when "abstract"
|
||||||
|
@per_column = 1
|
||||||
|
when "file"
|
||||||
|
@per_column = 2
|
||||||
|
end
|
||||||
|
|
||||||
|
if @view_by.nil?
|
||||||
|
@view_by = " "
|
||||||
|
@writing_books = @writing_books.asc(:paper_title)
|
||||||
|
else
|
||||||
|
@writing_books = @writing_books.asc(@view_by).asc(:paper_title)
|
||||||
|
end
|
||||||
|
@writing_books = @writing_books.page(page).per(50)
|
||||||
|
respond_to do |format|
|
||||||
|
format.html { render :layout => false}
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def new
|
||||||
|
@personal_book = WritingBook.new
|
||||||
|
@author_types = BookAuthorType.all
|
||||||
|
render :layout => false
|
||||||
|
end
|
||||||
|
|
||||||
|
def create
|
||||||
|
params[:writing_book][:create_user_id] = current_user.id
|
||||||
|
@personal_book = WritingBook.new(params[:writing_book])
|
||||||
|
if @personal_book.save
|
||||||
|
render json: {success: true, msg: t('create_success')}.to_json
|
||||||
|
else
|
||||||
|
error_msg = @personal_book.errors.full_messages.join("<br />")
|
||||||
|
render json: {success: false, msg: error_msg}.to_json
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def edit
|
||||||
|
@personal_book = WritingBook.find(params[:id])
|
||||||
|
@author_types = BookAuthorType.all
|
||||||
|
render :layout => false
|
||||||
|
end
|
||||||
|
|
||||||
|
def update
|
||||||
|
params[:writing_book][:create_user_id] = current_user.id
|
||||||
|
@personal_book = WritingBook.new(params[:writing_book])
|
||||||
|
if @personal_book.update_attributes(params[:writing_book])
|
||||||
|
render json: {success: true, msg: t('create_success')}.to_json
|
||||||
|
else
|
||||||
|
error_msg = @personal_book.errors.full_messages.join("<br />")
|
||||||
|
render json: {success: false, msg: error_msg}.to_json
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def destroy
|
||||||
|
@personal_book = WritingBook.find(params[:id])
|
||||||
|
@personal_book.destroy
|
||||||
|
render :json => {success: true, msg: t('delete_success')}
|
||||||
|
end
|
||||||
|
|
||||||
|
def books_window
|
||||||
|
render :layout => false
|
||||||
|
end
|
||||||
|
end
|
|
@ -0,0 +1,96 @@
|
||||||
|
module Panel::PersonalBook::Desktop::PersonalBooksHelper
|
||||||
|
def publication_record publication, view
|
||||||
|
content_tag :li,
|
||||||
|
"item" => "true",
|
||||||
|
:class => "list_t_item" do
|
||||||
|
marker + \
|
||||||
|
content(publication, view) + \
|
||||||
|
edit_or_delete(publication)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def marker
|
||||||
|
content_tag :div,
|
||||||
|
:class => "list_item_action" do
|
||||||
|
content_tag(:a, "",:href=>"",
|
||||||
|
:class => "icon-check-empty",
|
||||||
|
"toggle-onclick"=>"icon-check-empty icon-check",
|
||||||
|
"ajax-remote"=>"false") + \
|
||||||
|
content_tag(:a, "",:href=>"",
|
||||||
|
:class => "icon-star-empty",
|
||||||
|
"toggle-onclick"=>"icon-star-empty icon-star",
|
||||||
|
"ajax-remote"=>"false")
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def content publication, view
|
||||||
|
case view
|
||||||
|
when "conference_title"
|
||||||
|
des = content_tag(:div, publication.book_title,
|
||||||
|
:class => "list_t_des")
|
||||||
|
when "keywords"
|
||||||
|
des = content_tag(:div, publication.keywords,
|
||||||
|
:class => "list_t_des")
|
||||||
|
when "abstract"
|
||||||
|
des = content_tag(:div, publication.abstract,
|
||||||
|
:class => "list_t_des")
|
||||||
|
when "file"
|
||||||
|
des = content_tag(:div, link_publication_file(publication),
|
||||||
|
:class => "list_t_des")
|
||||||
|
else
|
||||||
|
end
|
||||||
|
|
||||||
|
content_tag(:div, publication.paper_title,
|
||||||
|
:class => "list_t_title") + des
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
def edit_or_delete publication
|
||||||
|
content_tag :div,
|
||||||
|
:class => "list_item_function" do
|
||||||
|
content_tag(:a, t("edit"),
|
||||||
|
:class => "journal_paper_edit admbg2 admtxt",
|
||||||
|
:href => edit_panel_personal_book_desktop_personal_book_path(publication),
|
||||||
|
"callback-method" => "editbook",
|
||||||
|
"ajax-remote" => "get") + \
|
||||||
|
content_tag(:a, t(:delete_),
|
||||||
|
"ajax-remote" => "delete",
|
||||||
|
"confirm-message" => t("sure?"),
|
||||||
|
"callback-method" => "bookDelete",
|
||||||
|
:class => "journal_paper_delete admbg2 admtxt",
|
||||||
|
:href => panel_personal_book_desktop_personal_book_path(publication))
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def link_publication_file publication
|
||||||
|
publication.writing_book_files.map{|file|
|
||||||
|
link_to(image_tag(check_file_type(file.file.url)) + \
|
||||||
|
content_tag(:span, file.title, :class => "filetitle"),
|
||||||
|
file.file.url,
|
||||||
|
:class => "file",
|
||||||
|
"target" => "_blank")
|
||||||
|
}.inject(:+)
|
||||||
|
end
|
||||||
|
|
||||||
|
def check_file_type file
|
||||||
|
if not file.nil?
|
||||||
|
file_type = MIME::Types.type_for(file).first.to_s.split("/")[1]
|
||||||
|
file_type = "/assets/ft-icons/#{file_type}/#{file_type}-48_32.png"
|
||||||
|
else
|
||||||
|
file_type = ""
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def generate_authors_name ids
|
||||||
|
author_name = ids.map{|m|
|
||||||
|
if m == "0"
|
||||||
|
#{:id => 0, :text => current_user.name, :email => current_user.email }
|
||||||
|
{:id => 0, :text => current_user.name }
|
||||||
|
else
|
||||||
|
#{:id => m, :text => ConferenceCoAuthor.find(m).co_author, :email => ConferenceCoAuthor.find(m).email}
|
||||||
|
{:id => m, :text => ConferenceCoAuthor.find(m).co_author}
|
||||||
|
end
|
||||||
|
}
|
||||||
|
author_name.to_json
|
||||||
|
end
|
||||||
|
end
|
|
@ -0,0 +1,164 @@
|
||||||
|
<div class="toolbar hh1">
|
||||||
|
<div class="fn_g hp">
|
||||||
|
|
||||||
|
<%= f.submit t("save"), name: "commit", class: "fn_btn ini_input hp hh1 thmc2 thmtxt" %>
|
||||||
|
<% if not @personal_book.new_record? %>
|
||||||
|
<%= submit_tag t("cancel"), :type => "button", "callback-method"=>"cancelbook", "ajax-remote" => "get", :href => panel_personal_book_desktop_personal_books_path, class: "fn_btn ini_input hp hh1 admbg2 admtxt" %>
|
||||||
|
|
||||||
|
<% end %>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1">Share</div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Full</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Abstract</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Friends</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Private</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Group</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1"><span class="icon-question-sign"></span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="overview" content-layout="column" base-width="420">
|
||||||
|
<div column="true">
|
||||||
|
<div class="s_form">
|
||||||
|
<ul>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= f.fields_for :paper_title_translations do |f| %>
|
||||||
|
<%= f.text_area locale,
|
||||||
|
class: "s_grid_12 s_grid s_grid_h_3",
|
||||||
|
size: "20x4",
|
||||||
|
placeholder: t("personal_book.paper_title"),
|
||||||
|
value: (@personal_book.paper_title_translations[locale.to_s] rescue nil) %>
|
||||||
|
<% end %>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= f.fields_for :book_title_translations do |f| %>
|
||||||
|
<%= f.text_field locale,
|
||||||
|
size: "20",
|
||||||
|
placeholder: t("personal_book.book_title"),
|
||||||
|
class: "s_grid_12 s_grid",
|
||||||
|
value: (@personal_book.book_title_translations[locale.to_s] rescue nil) %>
|
||||||
|
<% end %>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= label_tag("", t("personal_book.book_paper_type"), class: "s_grid_4 s_grid") %>
|
||||||
|
<%= f.select :book_paper_type_id, BookPaperType.all.collect {|t| [ t.title, t.id ]}, {:class => "s_grid s_grid_8"} %>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= label_tag("", t("personal_book.author_type"), class: "s_grid_4 s_grid") %>
|
||||||
|
<% @author_types.each do |author_type| %>
|
||||||
|
<%= content_tag :label,:class => "s_grid_4 s_grid" do -%>
|
||||||
|
<%= check_box_tag 'writing_book[book_author_type_ids][]', author_type.id, @personal_book.book_author_type_ids.include?(author_type.id)%>
|
||||||
|
<%= author_type.title %>
|
||||||
|
<%= hidden_field_tag 'writing_book[book_author_type_ids][]', '' %>
|
||||||
|
<% end %>
|
||||||
|
<% end %>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= f.fields_for :extracted_chapters_translations do |f| %>
|
||||||
|
<%= f.text_field locale,
|
||||||
|
size: "20",
|
||||||
|
placeholder: t("personal_book.extracted_chapters"),
|
||||||
|
class: "s_grid_12 s_grid",
|
||||||
|
value: (@personal_book.extracted_chapters_translations[locale.to_s] rescue nil) %>
|
||||||
|
<% end %>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= f.fields_for :publishers_translations do |f| %>
|
||||||
|
<%= f.text_field locale,
|
||||||
|
size: "20",
|
||||||
|
placeholder: t("personal_book.publishers"),
|
||||||
|
class: "s_grid_12 s_grid",
|
||||||
|
value: (@personal_book.publishers_translations[locale.to_s] rescue nil) %>
|
||||||
|
<% end %>
|
||||||
|
</li>
|
||||||
|
<!-- <li class="s_grid_row">
|
||||||
|
<%#= f.text_area :author_tokens,
|
||||||
|
class: "s_grid_12 s_grid",
|
||||||
|
size: "20x2",
|
||||||
|
placeholder: t("personal_journal.authors"),
|
||||||
|
"autocomplete" => "/panel/personal_journal/desktop/journal_pages/new.json",
|
||||||
|
"autocomplete-format" => "--:[text,email]",
|
||||||
|
"data-pre" => generate_authors_name(@personal_book.journal_co_author_ids) %>
|
||||||
|
|
||||||
|
</li> -->
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= label_tag("", t("personal_book.publication_date"), class: "s_grid_4 s_grid") %>
|
||||||
|
<%= f.date_select :publish_date, {:use_month_numbers => true, :start_year => Time.now.year, :end_year => 1930, :order => [:year] }, {:class => 's_grid_4 s_grid'} %>
|
||||||
|
<%= f.date_select :publish_date, {:use_month_numbers => true, :order => [:month, :day] }, {:class => 's_grid_2 s_grid'} %>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= label_tag("", t("personal_book.url"), class: "s_grid_4 s_grid") %><%= f.text_field :url, size: "20", class: "s_grid_8 s_grid"%>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div column="true">
|
||||||
|
<div class="s_form">
|
||||||
|
<ul>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= f.text_area :keywords, size: "20x3", placeholder: t("personal_book.keywords"), class: "s_grid_12 s_grid_h_2 s_grid"%>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= label_tag("", t("personal_book.pages"), class: "s_grid_4 s_grid") %><%= f.text_field :pages, size: "20", class: "s_grid_8 s_grid"%>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= f.label :language, t("personal_book.language"), :class => "s_grid s_grid_4" %>
|
||||||
|
<%= f.select :language, WritingBook::LANGUAGE_TYPES,{} ,{:class => "s_grid s_grid_8"} %>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= label_tag("", t("personal_book.isbn"), class: "s_grid_4 s_grid") %><%= f.text_field :isbn, size: "20", class: "s_grid_8 s_grid"%>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= f.text_area :note, size: "20x3", placeholder: t("personal_book.note"), class: "s_grid_12 s_grid s_grid_h_5"%>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div column="true">
|
||||||
|
<div class="s_form">
|
||||||
|
<ul>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<table class="s_table">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th class="s_grid_2"><%= t("personal_book.file")%></th>
|
||||||
|
<th class="s_grid_4"><%= t("personal_book.file_name")%></th>
|
||||||
|
<th class="s_grid_4"><%= t("personal_book.description") %></th>
|
||||||
|
<th class="s_grid_2"></th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tfoot>
|
||||||
|
<tr>
|
||||||
|
<td colspan="4">
|
||||||
|
<div id='add_plugin_file' class="info_input plugin_files_block s_action">
|
||||||
|
<%= hidden_field_tag 'plugin_file_field_count', @personal_book.writing_book_files.count %>
|
||||||
|
<a class="add setting_btn thmc1 thmtxt w1 hh1 hp" href="#"><i class="icon-plus icon-white"></i> add</a>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tfoot>
|
||||||
|
<tbody>
|
||||||
|
<% @personal_book.writing_book_files.each_with_index do |writing_book_file, i| %>
|
||||||
|
<%= f.fields_for :writing_book_files, writing_book_file do |f| %>
|
||||||
|
<%= render :partial => 'form_file', :object => writing_book_file, :locals => {:f => f, :i => i} %>
|
||||||
|
<% end %>
|
||||||
|
<% end %>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<script>
|
||||||
|
var get_html = function(old_id,new_id){
|
||||||
|
return ("<%= escape_javascript(add_attribute 'form_file', f, :writing_book_files) %>").replace(old_id, new_id);
|
||||||
|
}
|
||||||
|
</script>
|
|
@ -0,0 +1,33 @@
|
||||||
|
<tr id="<%= "plugin_file_#{form_file.id}" if !form_file.new_record? %>" class="list_item">
|
||||||
|
<td>
|
||||||
|
<div>
|
||||||
|
<% if form_file.new_record? %>
|
||||||
|
<%= f.file_field :file, class: "s_grid_2" %>
|
||||||
|
<% end %>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<%= f.text_field :title, :class => 's_grid_4' %>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<%= f.fields_for :file_title_translations do |f| %>
|
||||||
|
<%= f.text_field locale,
|
||||||
|
class: 's_grid_4',
|
||||||
|
value: (form_file.file_title_translations[locale] rescue nil) %>
|
||||||
|
<% end %>
|
||||||
|
</td>
|
||||||
|
|
||||||
|
<td>
|
||||||
|
<span class="action">
|
||||||
|
<% if form_file.new_record? %>
|
||||||
|
<a class="delete"><i class="icon-remove"></i></a>
|
||||||
|
<% else %>
|
||||||
|
<%= f.hidden_field :id %>
|
||||||
|
<a class="remove_existing_record"><i class="icon-remove"></i></a>
|
||||||
|
<%= f.hidden_field :should_destroy, :value => nil, :class => 'should_destroy' %>
|
||||||
|
<% end %>
|
||||||
|
<%= form_file.file.file ? ( link_to '', form_file.file.url, {:class => 'icon-eye-open', :target => '_blank', :title => t(:view)} ) : '' %>
|
||||||
|
</span>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
|
@ -1,8 +1,10 @@
|
||||||
<div id="research_d">
|
<%= stylesheet_link_tag "/assets/personal_book/desktop/personal_book" %>
|
||||||
|
<%= javascript_include_tag "personal_book/desktop/personal_books" %>
|
||||||
|
<div id="books">
|
||||||
<div id="content">
|
<div id="content">
|
||||||
<div id="header" class="hh2">
|
<div id="header" class="hh2">
|
||||||
<div class="dtitle w2 hh2 hp">
|
<div class="dtitle w2 hh2 hp">
|
||||||
<span class="thmtxth">Research Domain</span>
|
<span class="thmtxth">Books</span>
|
||||||
</div>
|
</div>
|
||||||
<div id="search_app" class="hfn w2 hh1 hp thmc3">
|
<div id="search_app" class="hfn w2 hh1 hp thmc3">
|
||||||
<input type="text" class="ini_input form" value="Search" id="searchbox" />
|
<input type="text" class="ini_input form" value="Search" id="searchbox" />
|
||||||
|
@ -13,14 +15,14 @@
|
||||||
<div id="panel_l" class="ph">
|
<div id="panel_l" class="ph">
|
||||||
<div class="s_menu sm_v" content-type="menu">
|
<div class="s_menu sm_v" content-type="menu">
|
||||||
<ul id='setting_left_nav'>
|
<ul id='setting_left_nav'>
|
||||||
<li><a href="<%= desktop_research_research_d_list_path %>" callback-method="list" class="hh1 w2 hp active thmc1 thmtxt" onclick='return false;'>List</a></li>
|
<li><a href="<%= panel_personal_book_desktop_personal_books_path %>" callback-method="list" class="hh1 w2 hp active thmc1 thmtxt" load="true" onclick='return false;'>List</a></li>
|
||||||
<li><a href="<%= desktop_research_research_d_add_path %>" callback-method="add_this" class="admtxt hh1 w2 hp" onclick='return false;'>Add/Edit</a></li>
|
<li><a href="<%= new_panel_personal_book_desktop_personal_book_path %>" callback-method="addbook" class="admtxt hh1 w2 hp" onclick='return false;'>Add/Edit</a></li>
|
||||||
<li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Domains</a></li>
|
<!-- <li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Books</a></li>
|
||||||
<li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Co-Authors</a></li>
|
<li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Co-Authors</a></li>
|
||||||
<li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Tags & Keywords</a></li>
|
<li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Tags & Keywords</a></li>
|
||||||
<li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Analysis</a></li>
|
<li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Analysis</a></li>
|
||||||
<li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Import</a></li>
|
<li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Import</a></li>
|
||||||
<li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Export</a></li>
|
<li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Export</a></li> -->
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
|
@ -0,0 +1,3 @@
|
||||||
|
<%= form_for @personal_book, html: { multipart: true, "form-type"=>"ajax_form", "callback-method"=>"formCallback"}, url: panel_personal_book_desktop_personal_books_path(@personal_book) do |f| %>
|
||||||
|
<%= render partial: 'form', locals: {:f => f} %>
|
||||||
|
<%end%>
|
|
@ -0,0 +1,84 @@
|
||||||
|
<div class="toolbar hh1">
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1"><span class="icon-check"></span></div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul id="journal_selection_options">
|
||||||
|
<li><a class="hp hh1 admtxt" href="all" ajax-remote="false" callback-method="allnone">All</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="none" ajax-remote="false" callback-method="allnone">None</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1">More</div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Delete</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Tag</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1">Tag</div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">All</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Starred</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">MIT</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1">Status</div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">All</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Published</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Pending</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1">View</div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul id="journal_view_selection">
|
||||||
|
<li><%= link_to "Journal", panel_personal_book_desktop_personal_books_path + "?view=book_title", :class => "hp hh1 admtxt", "ajax-remote" => "get" %></li>
|
||||||
|
<li><%= link_to "Title", panel_personal_book_desktop_personal_books_path + "?view=paper_title", :class => "hp hh1 admtxt", "ajax-remote" => "get" %></li>
|
||||||
|
<li><%= link_to "File", panel_personal_book_desktop_personal_books_path + "?view=file", :class => "hp hh1 admtxt", "ajax-remote" => "get" %></li>
|
||||||
|
<li><%= link_to "Keywords", panel_personal_book_desktop_personal_books_path + "?view=keywords", :class => "hp hh1 admtxt", "ajax-remote" => "get" %></li>
|
||||||
|
<li><%= link_to "Abstract", panel_personal_book_desktop_personal_books_path + "?view=abstract", :class => "hp hh1 admtxt", "ajax-remote" => "get" %></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1">Share</div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Full</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Abstract</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Friends</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Private</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Group</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1" id='ns'>New Share</div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul>
|
||||||
|
<li><a class="hp hh1 admtxt remote_url" href="<%= panel_personal_book_desktop_personal_books_path %>">Full</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Abstract</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Friends</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Private</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Group</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1"><span class="icon-question-sign"></span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="overview" page-name="journal_p_list" content-layout="datalist" base-width="300" per-column="<%= @per_column.to_s %>" pagination-var="view=<%= @view_by %>&page" >
|
||||||
|
<% @writing_books.each do |w| %>
|
||||||
|
<%= publication_record w, @view_by%>
|
||||||
|
<% end %>
|
||||||
|
</div>
|
|
@ -0,0 +1,3 @@
|
||||||
|
<%= form_for @personal_book, html: { multipart: true, "form-type"=>"ajax_form", "callback-method"=>"formCallback"}, url: panel_personal_book_desktop_personal_books_path do |f| %>
|
||||||
|
<%= render partial: 'form', locals: {:f => f} %>
|
||||||
|
<%end%>
|
|
@ -1,4 +1,51 @@
|
||||||
en:
|
en:
|
||||||
|
|
||||||
module_name:
|
module_name:
|
||||||
personal_book: Book
|
personal_book: Book
|
||||||
|
personal_book:
|
||||||
|
paper_title : "Paper Title"
|
||||||
|
book_title : "Book Title"
|
||||||
|
extracted_chapters : "Extracted Chapters"
|
||||||
|
publishers : "Publishers"
|
||||||
|
authors : "Authors"
|
||||||
|
tags : "Tags"
|
||||||
|
year : "Year"
|
||||||
|
language : "Language"
|
||||||
|
isbn : "ISSN(ISBN)"
|
||||||
|
vol_no : "Vol.No"
|
||||||
|
issue_no : "Issue.No"
|
||||||
|
form_to_start : "From"
|
||||||
|
form_to_end : "To"
|
||||||
|
total_pages : "Total Pages"
|
||||||
|
keywords : "Keywords"
|
||||||
|
abstract : "Abstract"
|
||||||
|
publication_date : "Date of Publication"
|
||||||
|
url : "Reference URL"
|
||||||
|
note : "Note"
|
||||||
|
level_type : "Level Type"
|
||||||
|
author_type : "Author Type"
|
||||||
|
from : "From"
|
||||||
|
to : "To"
|
||||||
|
file : "File"
|
||||||
|
file_name : "File name"
|
||||||
|
description : "File Description"
|
||||||
|
pages : "Pages"
|
||||||
|
book_paper_type : "Book Paper Type"
|
||||||
|
|
||||||
|
create_success : "Successfully Create"
|
||||||
|
update_success : "Successfully Update"
|
||||||
|
delete_success : "Successfully Delete"
|
||||||
|
add: "Add"
|
||||||
|
back: "Back"
|
||||||
|
delete: "Delete"
|
||||||
|
edit: "Edit"
|
||||||
|
nothing: "Nothing"
|
||||||
|
show: "Show"
|
||||||
|
sure?: "Are you sure?"
|
||||||
|
update: "Update"
|
||||||
|
yes_: "Yes"
|
||||||
|
no_: "No"
|
||||||
|
cancel : "Cancel"
|
||||||
|
save: "save"
|
||||||
|
hintText: "Type in a search term"
|
||||||
|
noResultsText: "No results"
|
||||||
|
searchingText: "Searching…"
|
||||||
|
|
|
@ -1,4 +1,51 @@
|
||||||
zh_tw:
|
zh_tw:
|
||||||
|
|
||||||
module_name:
|
module_name:
|
||||||
personal_book: 專書
|
personal_book: 期刊著作
|
||||||
|
personal_book:
|
||||||
|
paper_title : "論文名稱"
|
||||||
|
book_title : "期刊名稱"
|
||||||
|
extracted_chapters : "Extracted Chapters"
|
||||||
|
publishers : "Publishers"
|
||||||
|
authors : "作者"
|
||||||
|
tags : "領域"
|
||||||
|
year : "年度"
|
||||||
|
language : "語言"
|
||||||
|
isbn : "ISSN(ISBN)"
|
||||||
|
vol_no : "卷數"
|
||||||
|
issue_no : "期數"
|
||||||
|
form_to_start : "起"
|
||||||
|
form_to_end : "訖"
|
||||||
|
total_pages : "總頁數"
|
||||||
|
keywords : "關鍵字"
|
||||||
|
abstract : "摘要"
|
||||||
|
publication_date : "發表日期"
|
||||||
|
url : "參考連結"
|
||||||
|
note : "記事"
|
||||||
|
level_type : "期刊類別"
|
||||||
|
author_type : "作者類別"
|
||||||
|
from : "起"
|
||||||
|
to : "訖"
|
||||||
|
file : "檔案"
|
||||||
|
file_name : "檔案名稱"
|
||||||
|
description : "描述"
|
||||||
|
pages : "Pages"
|
||||||
|
book_paper_type : "Book Paper Type"
|
||||||
|
|
||||||
|
create_success : "新增完成!!"
|
||||||
|
update_success : "更新完成!!"
|
||||||
|
delete_success : "刪除成功!!"
|
||||||
|
add: "新增"
|
||||||
|
back: "返回"
|
||||||
|
delete: "刪除"
|
||||||
|
edit: "編輯"
|
||||||
|
nothing: "無"
|
||||||
|
show: "顯示"
|
||||||
|
sure?: "您肯定嗎?"
|
||||||
|
update: "更新"
|
||||||
|
yes_: "是"
|
||||||
|
no_: "否"
|
||||||
|
cancel : "取消"
|
||||||
|
save: "儲存"
|
||||||
|
hintText: "請輸入搜尋關鍵字"
|
||||||
|
noResultsText: "沒有相關的比對結果"
|
||||||
|
searchingText: "搜尋中…"
|
||||||
|
|
|
@ -2,6 +2,10 @@ Rails.application.routes.draw do
|
||||||
|
|
||||||
namespace :panel do
|
namespace :panel do
|
||||||
namespace :personal_book do
|
namespace :personal_book do
|
||||||
|
namespace :desktop do
|
||||||
|
match 'books_window' => "personal_books#books_window"
|
||||||
|
resources :personal_books
|
||||||
|
end
|
||||||
namespace :back_end do
|
namespace :back_end do
|
||||||
|
|
||||||
match 'writing_book_setting' => "writing_books#writing_book_setting" ,:as => :writing_book_setting
|
match 'writing_book_setting' => "writing_books#writing_book_setting" ,:as => :writing_book_setting
|
||||||
|
@ -33,6 +37,7 @@ Rails.application.routes.draw do
|
||||||
match "reload_writing_books" => "writing_books#reload_writing_books"
|
match "reload_writing_books" => "writing_books#reload_writing_books"
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
end
|
end
|
||||||
match "/appfront/*path" => redirect("/panel/*path")
|
match "/appfront/*path" => redirect("/panel/*path")
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,158 @@
|
||||||
|
orbitDesktop.prototype.initializePersonalDiploma = function(target,url,cache){ // this init journal papers
|
||||||
|
this.initializePersonalDiploma.formCallback = function(data){
|
||||||
|
if(data.success){
|
||||||
|
o.notify(data.msg,"success");
|
||||||
|
o.sub_menu_item($("div[content-type=menu] a").eq(0));
|
||||||
|
}else{
|
||||||
|
o.notify(data.msg,"alert");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
this.initializePersonalDiploma.list = function(){ // to open list part in journal papers page
|
||||||
|
var journalData;
|
||||||
|
var bindHandlers = function(){ // to bind handlers for list page
|
||||||
|
|
||||||
|
}
|
||||||
|
bindHandlers();
|
||||||
|
|
||||||
|
var bindSecondaryHandlers = function(){
|
||||||
|
$("#journal_p div#paper_list a.icon-check-empty").click(function(){
|
||||||
|
if($(this).hasClass("icon-check-empty")){
|
||||||
|
$(this).switchClass("icon-check-empty","icon-check",0);
|
||||||
|
} else if($(this) .hasClass("icon-check")) {
|
||||||
|
$(this).switchClass("icon-check","icon-check-empty",0);
|
||||||
|
} else if($(this).hasClass("icon-star")){
|
||||||
|
$(this).removeClass("icon-star").addClass("icon-star-empty");
|
||||||
|
} else if($(this).hasClass("icon-star-empty")){
|
||||||
|
$(this).removeClass("icon-star-empty").addClass("icon-star");
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.initializePersonalDiploma.diplomaDelete = function(data,dom){
|
||||||
|
var parent = dom.parent().parent();
|
||||||
|
if(data.success){
|
||||||
|
parent.hide("slide",function(){parent.remove();});
|
||||||
|
o.notify(data.msg,"success");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
this.initializePersonalDiploma.canceldiploma = function(){
|
||||||
|
o.highlight_sub_menu_item(0);
|
||||||
|
}
|
||||||
|
|
||||||
|
this.initializePersonalDiploma.editdiploma = function(){
|
||||||
|
o.highlight_sub_menu_item(1);
|
||||||
|
var uploadFiles = function(){
|
||||||
|
$('#add_plugin_file a.add').click(function(){
|
||||||
|
var new_id = $(this).prev().attr('value');
|
||||||
|
var old_id = new RegExp("new_writing_journal_files", "g");
|
||||||
|
$(this).prev().attr('value', parseInt(new_id) + 1);
|
||||||
|
var x = get_html(old_id,new_id);
|
||||||
|
var newfield = $(x);
|
||||||
|
$(this).parents('table').append(newfield);
|
||||||
|
newfield.find('.action a.delete').click(function(){
|
||||||
|
newfield.remove();
|
||||||
|
});
|
||||||
|
return false;
|
||||||
|
});
|
||||||
|
$('.action a.remove_existing_record').click(function(){
|
||||||
|
$(this).next('.should_destroy').attr('value', 1);
|
||||||
|
$("tr#add_plugin_file_" + $(this).prev().attr('value')).hide();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
var preData = function(){
|
||||||
|
$("#writing_journal_author_tokens").select2('data', JSON.parse($("#writing_journal_author_tokens").attr('data-pre')));
|
||||||
|
}
|
||||||
|
uploadFiles();
|
||||||
|
// preData();
|
||||||
|
}
|
||||||
|
|
||||||
|
this.initializePersonalDiploma.adddiploma = function(){ // to open add pages in journal papers page
|
||||||
|
var uploadFiles = function(){
|
||||||
|
$('#add_plugin_file a.add').click(function(){
|
||||||
|
var new_id = $(this).prev().attr('value');
|
||||||
|
var old_id = new RegExp("new_writing_journal_files", "g");
|
||||||
|
$(this).prev().attr('value', parseInt(new_id) + 1);
|
||||||
|
var x = get_html(old_id,new_id);
|
||||||
|
var newfield = $(x);
|
||||||
|
$(this).parents('table').append(newfield);
|
||||||
|
newfield.find('.action a.delete').click(function(){
|
||||||
|
newfield.remove();
|
||||||
|
});
|
||||||
|
return false;
|
||||||
|
});
|
||||||
|
$('.action a.remove_existing_record').click(function(){
|
||||||
|
$(this).next('.should_destroy').attr('value', 1);
|
||||||
|
$("tr#add_plugin_file_" + $(this).prev().attr('value')).hide();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
// console.log("hi");
|
||||||
|
var bindHandlers = function(){
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
bindHandlers();
|
||||||
|
uploadFiles();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
this.initializePersonalDiploma.coAuthorformCallback = function(data){
|
||||||
|
if(data.success){
|
||||||
|
o.notify(data.msg,"success");
|
||||||
|
o.sub_menu_item($("div[content-type=menu] a").eq(3));
|
||||||
|
}else{
|
||||||
|
o.notify(data.msg,"alert");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.initializePersonalDiploma.coauthor = function(){ // to open add pages in coauthor page
|
||||||
|
var bindHandlers = function(){ // to bind handlers for add page
|
||||||
|
|
||||||
|
}
|
||||||
|
bindHandlers();
|
||||||
|
}
|
||||||
|
this.initializePersonalDiploma.coauthorRelationForm = function(data){
|
||||||
|
if(data.success){
|
||||||
|
o.notify(data.msg,"success");
|
||||||
|
$("#co_author_relation_table").html(data.newvalue);
|
||||||
|
}else{
|
||||||
|
o.notify(data.msg,"alert");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.initializePersonalDiploma.coauthorRelationEditForm = function(data){
|
||||||
|
if(data.success){
|
||||||
|
o.notify(data.msg,"success");
|
||||||
|
var x = o.layout_data.generate_layout_html(data.newvalue);
|
||||||
|
$("div[container=true] div.overview").html(x.markup);
|
||||||
|
}else{
|
||||||
|
o.notify(data.msg,"alert");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.initializePersonalDiploma.allnone = function(d,o){
|
||||||
|
switch(o.attr("href")){
|
||||||
|
case "all":
|
||||||
|
$("div.overview a.icon-check-empty").removeClass("icon-check-empty").addClass("icon-check");
|
||||||
|
break;
|
||||||
|
case "none":
|
||||||
|
$("div.overview a.icon-check").removeClass("icon-check").addClass("icon-check-empty");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.initializePersonalDiploma.allnone = function(d,o){
|
||||||
|
switch(o.attr("href")){
|
||||||
|
case "all":
|
||||||
|
$("div.overview a.icon-check-empty").removeClass("icon-check-empty").addClass("icon-check");
|
||||||
|
break;
|
||||||
|
case "none":
|
||||||
|
$("div.overview a.icon-check").removeClass("icon-check").addClass("icon-check-empty");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,115 @@
|
||||||
|
/* Books */
|
||||||
|
[page-name="books_list"] .list_t_item .inner {
|
||||||
|
padding-left: 30px; }
|
||||||
|
[page-name="books_list"] .list_item_action {
|
||||||
|
font-size: 12px;
|
||||||
|
float: left;
|
||||||
|
margin-left: -30px; }
|
||||||
|
[page-name="books_list"] .list_item_action a {
|
||||||
|
display: block;
|
||||||
|
width: 20px;
|
||||||
|
height: 20px;
|
||||||
|
line-height: 20px;
|
||||||
|
margin: 1px 1px 6px 1px; }
|
||||||
|
[page-name="books_list"] .list_item_action .icon-star-empty {
|
||||||
|
color: #999;
|
||||||
|
font-size: 20px; }
|
||||||
|
[page-name="books_list"] .list_item_action .icon-star {
|
||||||
|
color: #faa732;
|
||||||
|
font-size: 20px; }
|
||||||
|
[page-name="books_list"] .list_item_action .icon-check-empty {
|
||||||
|
color: #999;
|
||||||
|
font-size: 20px; }
|
||||||
|
[page-name="books_list"] .list_item_action .icon-check {
|
||||||
|
color: #333;
|
||||||
|
font-size: 20px; }
|
||||||
|
[page-name="books_list"] .file_view .list_t_des {
|
||||||
|
overflow: hidden; }
|
||||||
|
[page-name="books_list"] .file_view .file {
|
||||||
|
float: left;
|
||||||
|
width: 120px;
|
||||||
|
height: 50px;
|
||||||
|
padding: 6px;
|
||||||
|
margin: 1px;
|
||||||
|
position: relative;
|
||||||
|
-webkit-box-sizing: border-box;
|
||||||
|
/* webkit */
|
||||||
|
-khtml-box-sizing: border-box;
|
||||||
|
/* konqueror */
|
||||||
|
-moz-box-sizing: border-box;
|
||||||
|
/* firefox */
|
||||||
|
-ms-box-sizing: border-box;
|
||||||
|
/* ie */
|
||||||
|
box-sizing: border-box;
|
||||||
|
/* css3 */ }
|
||||||
|
[page-name="books_list"] .file_view .file:hover {
|
||||||
|
background-color: #f7f7f7; }
|
||||||
|
[page-name="books_list"] .file_view .file img {
|
||||||
|
width: 38px;
|
||||||
|
height: 38px;
|
||||||
|
position: absolute;
|
||||||
|
left: 6px;
|
||||||
|
top: 6px; }
|
||||||
|
[page-name="books_list"] .file_view .file .filetitle {
|
||||||
|
display: block;
|
||||||
|
width: 100%;
|
||||||
|
height: 38px;
|
||||||
|
padding-left: 40px;
|
||||||
|
overflow: hidden;
|
||||||
|
-webkit-box-sizing: border-box;
|
||||||
|
/* webkit */
|
||||||
|
-khtml-box-sizing: border-box;
|
||||||
|
/* konqueror */
|
||||||
|
-moz-box-sizing: border-box;
|
||||||
|
/* firefox */
|
||||||
|
-ms-box-sizing: border-box;
|
||||||
|
/* ie */
|
||||||
|
box-sizing: border-box;
|
||||||
|
/* css3 */ }
|
||||||
|
|
||||||
|
/* Books Books list */
|
||||||
|
[page-name="books_books"] .datalist_item .inner {
|
||||||
|
padding-left: 30px; }
|
||||||
|
[page-name="books_books"] .list_item_action {
|
||||||
|
font-size: 12px;
|
||||||
|
float: left;
|
||||||
|
margin-left: -30px; }
|
||||||
|
[page-name="books_books"] .list_item_action i {
|
||||||
|
color: #999;
|
||||||
|
font-size: 20px;
|
||||||
|
display: block;
|
||||||
|
width: 20px;
|
||||||
|
height: 20px;
|
||||||
|
line-height: 20px;
|
||||||
|
margin: 1px 1px 6px 1px; }
|
||||||
|
[page-name="books_books"] .list_t_desc {
|
||||||
|
font-family: Arial, sans-serif;
|
||||||
|
font-size: 12px;
|
||||||
|
color: #999; }
|
||||||
|
|
||||||
|
/* Books Co-Author */
|
||||||
|
[page-name="books_coauthor"] .list_t_item {
|
||||||
|
height: 110px; }
|
||||||
|
[page-name="books_coauthor"] .list_item_function a {
|
||||||
|
display: inline-block;
|
||||||
|
padding: 4px;
|
||||||
|
font-family: Arial, sans-serif;
|
||||||
|
font-size: 11px;
|
||||||
|
-webkit-text-size-adjust: none; }
|
||||||
|
[page-name="books_coauthor"] .info {
|
||||||
|
font-family: Arial, sans-serif; }
|
||||||
|
[page-name="books_coauthor"] .info li {
|
||||||
|
margin-bottom: 8px;
|
||||||
|
color: #999; }
|
||||||
|
[page-name="books_coauthor"] .info .name {
|
||||||
|
font-size: 18px;
|
||||||
|
line-height: 24px;
|
||||||
|
color: #333; }
|
||||||
|
|
||||||
|
/* Books Co-Author Relationship*/
|
||||||
|
[page-name="books_coauthor_relation"] .edit_co_author_relation {
|
||||||
|
/*margin-left: -10px;*/ }
|
||||||
|
[page-name="books_coauthor_relation"] .form_space {
|
||||||
|
margin-bottom: 10px;
|
||||||
|
font-size: 18px;
|
||||||
|
font-family: Arial, sans-serif; }
|
|
@ -0,0 +1,123 @@
|
||||||
|
@import "desktop-helper";
|
||||||
|
|
||||||
|
/* Books */
|
||||||
|
[page-name="books_list"] {
|
||||||
|
.list_t_item .inner { padding-left: 30px; }
|
||||||
|
.list_item_action {
|
||||||
|
font-size: 12px;
|
||||||
|
float: left;
|
||||||
|
margin-left: -30px;
|
||||||
|
|
||||||
|
a {
|
||||||
|
display: block;
|
||||||
|
width: 20px;
|
||||||
|
height: 20px;
|
||||||
|
line-height: 20px;
|
||||||
|
margin: 1px 1px 6px 1px;
|
||||||
|
}
|
||||||
|
.icon-star-empty { color: #999; font-size: 20px; }
|
||||||
|
.icon-star { color: #faa732; font-size: 20px; }
|
||||||
|
.icon-check-empty { color: #999; font-size: 20px; }
|
||||||
|
.icon-check { color: #333; font-size: 20px; }
|
||||||
|
}
|
||||||
|
|
||||||
|
.file_view {
|
||||||
|
.list_t_des {
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
.file {
|
||||||
|
float: left;
|
||||||
|
width: 120px;
|
||||||
|
height: 50px;
|
||||||
|
padding: 6px;
|
||||||
|
margin: 1px;
|
||||||
|
position: relative;
|
||||||
|
@include box-sizing;
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
background-color: lighten($gray, 10%);
|
||||||
|
}
|
||||||
|
img {
|
||||||
|
width: 38px;
|
||||||
|
height: 38px;
|
||||||
|
position: absolute;
|
||||||
|
left: 6px;
|
||||||
|
top: 6px;
|
||||||
|
}
|
||||||
|
.filetitle {
|
||||||
|
display: block;
|
||||||
|
width: 100%;
|
||||||
|
height: 38px;
|
||||||
|
padding-left: 40px;
|
||||||
|
overflow: hidden;
|
||||||
|
@include box-sizing;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Books Books list */
|
||||||
|
[page-name="books_books"] {
|
||||||
|
|
||||||
|
.datalist_item .inner {
|
||||||
|
padding-left: 30px;
|
||||||
|
}
|
||||||
|
.list_item_action {
|
||||||
|
font-size: 12px;
|
||||||
|
float: left;
|
||||||
|
margin-left: -30px;
|
||||||
|
}
|
||||||
|
.list_item_action i {
|
||||||
|
color: #999;
|
||||||
|
font-size: 20px;
|
||||||
|
display: block;
|
||||||
|
width: 20px;
|
||||||
|
height: 20px;
|
||||||
|
line-height: 20px;
|
||||||
|
margin: 1px 1px 6px 1px;
|
||||||
|
}
|
||||||
|
.list_t_desc {
|
||||||
|
font-family: Arial, sans-serif;
|
||||||
|
font-size: 12px;
|
||||||
|
color: #999;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Books Co-Author */
|
||||||
|
[page-name="books_coauthor"] {
|
||||||
|
.list_t_item {
|
||||||
|
height: 110px;
|
||||||
|
}
|
||||||
|
.list_item_function {}
|
||||||
|
.list_item_function a {
|
||||||
|
display: inline-block;
|
||||||
|
padding: 4px;
|
||||||
|
font-family: Arial, sans-serif;
|
||||||
|
font-size: 11px;
|
||||||
|
-webkit-text-size-adjust: none;
|
||||||
|
}
|
||||||
|
.info {
|
||||||
|
font-family: Arial, sans-serif;
|
||||||
|
}
|
||||||
|
.info li {
|
||||||
|
margin-bottom: 8px;
|
||||||
|
color: #999;
|
||||||
|
}
|
||||||
|
.info .name {
|
||||||
|
font-size: 18px;
|
||||||
|
line-height: 24px;
|
||||||
|
color: #333;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Books Co-Author Relationship*/
|
||||||
|
[page-name="books_coauthor_relation"]{
|
||||||
|
.edit_co_author_relation {
|
||||||
|
/*margin-left: -10px;*/
|
||||||
|
}
|
||||||
|
.form_space {
|
||||||
|
margin-bottom: 10px;
|
||||||
|
font-size: 18px;
|
||||||
|
font-family: Arial, sans-serif;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,51 @@
|
||||||
|
class Panel::PersonalDiploma::Desktop::PersonalDiplomasController < ApplicationController
|
||||||
|
|
||||||
|
def index
|
||||||
|
@diplomas = Diploma.where(create_user_id: current_user.id)
|
||||||
|
respond_to do |format|
|
||||||
|
format.html { render :layout => false}
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def new
|
||||||
|
@diploma = Diploma.new
|
||||||
|
render :layout => false
|
||||||
|
end
|
||||||
|
|
||||||
|
def create
|
||||||
|
params[:diploma][:create_user_id] = current_user.id
|
||||||
|
@diploma = Diploma.new(params[:diploma])
|
||||||
|
if @diploma.save
|
||||||
|
render json: {success: true, msg: t('create_success')}.to_json
|
||||||
|
else
|
||||||
|
error_msg = @diploma.errors.full_messages.join("<br />")
|
||||||
|
render json: {success: false, msg: error_msg}.to_json
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def edit
|
||||||
|
@diploma = Diploma.find(params[:id])
|
||||||
|
render :layout => false
|
||||||
|
end
|
||||||
|
|
||||||
|
def update
|
||||||
|
params[:diploma][:create_user_id] = current_user.id
|
||||||
|
@diploma = Diploma.new(params[:diploma])
|
||||||
|
if @diploma.update_attributes(params[:diploma])
|
||||||
|
render json: {success: true, msg: t('create_success')}.to_json
|
||||||
|
else
|
||||||
|
error_msg = @diploma.errors.full_messages.join("<br />")
|
||||||
|
render json: {success: false, msg: error_msg}.to_json
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def destroy
|
||||||
|
@diploma = Diploma.find(params[:id])
|
||||||
|
@diploma.destroy
|
||||||
|
render :json => {success: true, msg: t('delete_success')}
|
||||||
|
end
|
||||||
|
|
||||||
|
def diploma_window
|
||||||
|
render :layout => false
|
||||||
|
end
|
||||||
|
end
|
|
@ -0,0 +1,96 @@
|
||||||
|
module Panel::PersonalDiploma::Desktop::PersonalDiplomasHelper
|
||||||
|
def publication_record publication, view
|
||||||
|
content_tag :li,
|
||||||
|
"item" => "true",
|
||||||
|
:class => "list_t_item" do
|
||||||
|
marker + \
|
||||||
|
content(publication, view) + \
|
||||||
|
edit_or_delete(publication)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def marker
|
||||||
|
content_tag :div,
|
||||||
|
:class => "list_item_action" do
|
||||||
|
content_tag(:a, "",:href=>"",
|
||||||
|
:class => "icon-check-empty",
|
||||||
|
"toggle-onclick"=>"icon-check-empty icon-check",
|
||||||
|
"ajax-remote"=>"false") + \
|
||||||
|
content_tag(:a, "",:href=>"",
|
||||||
|
:class => "icon-star-empty",
|
||||||
|
"toggle-onclick"=>"icon-star-empty icon-star",
|
||||||
|
"ajax-remote"=>"false")
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def content publication, view
|
||||||
|
case view
|
||||||
|
when "diploma_title"
|
||||||
|
des = content_tag(:div, publication.diploma_title,
|
||||||
|
:class => "list_t_des")
|
||||||
|
when "keywords"
|
||||||
|
des = content_tag(:div, publication.keywords,
|
||||||
|
:class => "list_t_des")
|
||||||
|
when "abstract"
|
||||||
|
des = content_tag(:div, publication.abstract,
|
||||||
|
:class => "list_t_des")
|
||||||
|
when "file"
|
||||||
|
des = content_tag(:div, link_publication_file(publication),
|
||||||
|
:class => "list_t_des")
|
||||||
|
else
|
||||||
|
end
|
||||||
|
|
||||||
|
content_tag(:div, publication.school_name,
|
||||||
|
:class => "list_t_title") + des
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
def edit_or_delete publication
|
||||||
|
content_tag :div,
|
||||||
|
:class => "list_item_function" do
|
||||||
|
content_tag(:a, t("edit"),
|
||||||
|
:class => "journal_paper_edit admbg2 admtxt",
|
||||||
|
:href => edit_panel_personal_diploma_desktop_personal_diploma_path(publication),
|
||||||
|
"callback-method" => "editdiploma",
|
||||||
|
"ajax-remote" => "get") + \
|
||||||
|
content_tag(:a, t(:delete_),
|
||||||
|
"ajax-remote" => "delete",
|
||||||
|
"confirm-message" => t("sure?"),
|
||||||
|
"callback-method" => "diplomaDelete",
|
||||||
|
:class => "journal_paper_delete admbg2 admtxt",
|
||||||
|
:href => panel_personal_diploma_desktop_personal_diploma_path(publication))
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def link_publication_file publication
|
||||||
|
publication.writing_conference_files.map{|file|
|
||||||
|
link_to(image_tag(check_file_type(file.file.url)) + \
|
||||||
|
content_tag(:span, file.title, :class => "filetitle"),
|
||||||
|
file.file.url,
|
||||||
|
:class => "file",
|
||||||
|
"target" => "_blank")
|
||||||
|
}.inject(:+)
|
||||||
|
end
|
||||||
|
|
||||||
|
def check_file_type file
|
||||||
|
if not file.nil?
|
||||||
|
file_type = MIME::Types.type_for(file).first.to_s.split("/")[1]
|
||||||
|
file_type = "/assets/ft-icons/#{file_type}/#{file_type}-48_32.png"
|
||||||
|
else
|
||||||
|
file_type = ""
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def generate_authors_name ids
|
||||||
|
author_name = ids.map{|m|
|
||||||
|
if m == "0"
|
||||||
|
#{:id => 0, :text => current_user.name, :email => current_user.email }
|
||||||
|
{:id => 0, :text => current_user.name }
|
||||||
|
else
|
||||||
|
#{:id => m, :text => ConferenceCoAuthor.find(m).co_author, :email => ConferenceCoAuthor.find(m).email}
|
||||||
|
{:id => m, :text => ConferenceCoAuthor.find(m).co_author}
|
||||||
|
end
|
||||||
|
}
|
||||||
|
author_name.to_json
|
||||||
|
end
|
||||||
|
end
|
|
@ -0,0 +1,98 @@
|
||||||
|
<div class="toolbar hh1">
|
||||||
|
<div class="fn_g hp">
|
||||||
|
|
||||||
|
<%= f.submit t("save"), name: "commit", class: "fn_btn ini_input hp hh1 thmc2 thmtxt" %>
|
||||||
|
<% if not @diploma.new_record? %>
|
||||||
|
<%= submit_tag t("cancel"), :type => "button", "callback-method"=>"canceldiploma", "ajax-remote" => "get", :href => panel_personal_diploma_desktop_personal_diplomas_path, class: "fn_btn ini_input hp hh1 admbg2 admtxt" %>
|
||||||
|
|
||||||
|
<% end %>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1">Share</div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Full</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Abstract</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Friends</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Private</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Group</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1"><span class="icon-question-sign"></span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="overview" content-layout="column" base-width="420">
|
||||||
|
<div column="true">
|
||||||
|
<div class="s_form">
|
||||||
|
<ul>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= label_tag("", t("personal_diploma.start_date"), class: "s_grid_4 s_grid") %>
|
||||||
|
<%= f.date_select :start_date, {:use_month_numbers => true, :start_year => Time.now.year, :end_year => 1930, :order => [:year] }, {:class => 's_grid_4 s_grid'} %>
|
||||||
|
<%= f.date_select :start_date, {:use_month_numbers => true, :order => [:month, :day] }, {:class => 's_grid_2 s_grid'} %>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= label_tag("", t("personal_diploma.end_date"), class: "s_grid_4 s_grid") %>
|
||||||
|
<%= f.date_select :end_date, {:use_month_numbers => true, :start_year => Time.now.year, :end_year => 1930, :order => [:year] }, {:class => 's_grid_4 s_grid'} %>
|
||||||
|
<%= f.date_select :end_date, {:use_month_numbers => true, :order => [:month, :day] }, {:class => 's_grid_2 s_grid'} %>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= f.fields_for :school_name_translations do |f| %>
|
||||||
|
<%= f.text_field locale,
|
||||||
|
size: "20",
|
||||||
|
placeholder: t("personal_diploma.school_name"),
|
||||||
|
class: "s_grid_12 s_grid",
|
||||||
|
value: (@diploma.school_name_translations[locale.to_s] rescue nil) %>
|
||||||
|
<% end %>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= f.fields_for :country_translations do |f| %>
|
||||||
|
<%= f.text_field locale,
|
||||||
|
size: "20",
|
||||||
|
placeholder: t("personal_diploma.country"),
|
||||||
|
class: "s_grid_12 s_grid",
|
||||||
|
value: (@diploma.country_translations[locale.to_s] rescue nil) %>
|
||||||
|
<% end %>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= f.fields_for :department_translations do |f| %>
|
||||||
|
<%= f.text_field locale,
|
||||||
|
size: "20",
|
||||||
|
placeholder: t("personal_diploma.department"),
|
||||||
|
class: "s_grid_12 s_grid",
|
||||||
|
value: (@diploma.department_translations[locale.to_s] rescue nil) %>
|
||||||
|
<% end %>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= f.fields_for :degree_translations do |f| %>
|
||||||
|
<%= f.text_field locale,
|
||||||
|
size: "20",
|
||||||
|
placeholder: t("personal_diploma.degree"),
|
||||||
|
class: "s_grid_12 s_grid",
|
||||||
|
value: (@diploma.degree_translations[locale.to_s] rescue nil) %>
|
||||||
|
<% end %>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= label_tag("", t("personal_diploma.url"), class: "s_grid_4 s_grid") %><%= f.text_field :url, size: "20", class: "s_grid_8 s_grid"%>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= f.text_area :keywords, size: "20x3", placeholder: t("personal_diploma.keywords"), class: "s_grid_12 s_grid_h_2 s_grid"%>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= f.label :language, t("personal_diploma.language"), :class => "s_grid s_grid_4" %>
|
||||||
|
<%= f.select :language, Diploma::LANGUAGE_TYPES,{} ,{:class => "s_grid s_grid_8"} %>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div column="true">
|
||||||
|
<div class="s_form">
|
||||||
|
<ul>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= f.text_area :note, size: "20x3", placeholder: t("personal_diploma.note"), class: "s_grid_12 s_grid s_grid_h_5"%>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
|
@ -0,0 +1,35 @@
|
||||||
|
<%= stylesheet_link_tag "/assets/personal_diploma/personal_diploma" %>
|
||||||
|
<%= javascript_include_tag "personal_diploma/desktop/personal_diploma" %>
|
||||||
|
<div id="diploma">
|
||||||
|
<div id="content">
|
||||||
|
<div id="header" class="hh2">
|
||||||
|
<div class="dtitle w2 hh2 hp">
|
||||||
|
<span class="thmtxth">Education</span>
|
||||||
|
</div>
|
||||||
|
<div id="search_app" class="hfn w2 hh1 hp thmc3">
|
||||||
|
<input type="text" class="ini_input form" value="Search" id="searchbox" />
|
||||||
|
<input type="submit" class="ini_input submit thmc1" value="Submit"/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id="holder">
|
||||||
|
<div id="panel_l" class="ph">
|
||||||
|
<div class="s_menu sm_v" content-type="menu">
|
||||||
|
<ul id='setting_left_nav'>
|
||||||
|
<li><a href="<%= panel_personal_diploma_desktop_personal_diplomas_path %>" callback-method="list" class="hh1 w2 hp active thmc1 thmtxt" load="true" onclick='return false;'>List</a></li>
|
||||||
|
<li><a href="<%= new_panel_personal_diploma_desktop_personal_diploma_path %>" callback-method="adddiploma" class="admtxt hh1 w2 hp" onclick='return false;'>Add/Edit</a></li>
|
||||||
|
<!-- <li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Books</a></li>
|
||||||
|
<li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Co-Authors</a></li>
|
||||||
|
<li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Tags & Keywords</a></li>
|
||||||
|
<li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Analysis</a></li>
|
||||||
|
<li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Import</a></li>
|
||||||
|
<li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Export</a></li> -->
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id="panel_r" container="true" class="ph pw admbg hp">
|
||||||
|
</div>
|
||||||
|
<div class="clear"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
|
@ -0,0 +1,3 @@
|
||||||
|
<%= form_for @diploma, html: { multipart: true, "form-type"=>"ajax_form", "callback-method"=>"formCallback"}, url: panel_personal_diploma_desktop_personal_diplomas_path(@diploma) do |f| %>
|
||||||
|
<%= render partial: 'form', locals: {:f => f} %>
|
||||||
|
<%end%>
|
|
@ -0,0 +1,84 @@
|
||||||
|
<div class="toolbar hh1">
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1"><span class="icon-check"></span></div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul id="journal_selection_options">
|
||||||
|
<li><a class="hp hh1 admtxt" href="all" ajax-remote="false" callback-method="allnone">All</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="none" ajax-remote="false" callback-method="allnone">None</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1">More</div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Delete</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Tag</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1">Tag</div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">All</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Starred</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">MIT</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1">Status</div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">All</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Published</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Pending</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1">View</div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul id="journal_view_selection">
|
||||||
|
<li><%= link_to "Journal", panel_personal_diploma_desktop_personal_diplomas_path + "?view=diploma_title", :class => "hp hh1 admtxt", "ajax-remote" => "get" %></li>
|
||||||
|
<li><%= link_to "Title", panel_personal_diploma_desktop_personal_diplomas_path + "?view=paper_title", :class => "hp hh1 admtxt", "ajax-remote" => "get" %></li>
|
||||||
|
<li><%= link_to "File", panel_personal_diploma_desktop_personal_diplomas_path + "?view=file", :class => "hp hh1 admtxt", "ajax-remote" => "get" %></li>
|
||||||
|
<li><%= link_to "Keywords", panel_personal_diploma_desktop_personal_diplomas_path + "?view=keywords", :class => "hp hh1 admtxt", "ajax-remote" => "get" %></li>
|
||||||
|
<li><%= link_to "Abstract", panel_personal_diploma_desktop_personal_diplomas_path + "?view=abstract", :class => "hp hh1 admtxt", "ajax-remote" => "get" %></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1">Share</div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Full</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Abstract</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Friends</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Private</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Group</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1" id='ns'>New Share</div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul>
|
||||||
|
<li><a class="hp hh1 admtxt remote_url" href="<%= panel_personal_diploma_desktop_personal_diplomas_path %>">Full</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Abstract</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Friends</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Private</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Group</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1"><span class="icon-question-sign"></span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="overview" page-name="journal_p_list" content-layout="datalist" base-width="300" per-column="<%= @per_column.to_s %>" pagination-var="view=<%= @view_by %>&page" >
|
||||||
|
<% @diplomas.each do |w| %>
|
||||||
|
<%= publication_record w, @view_by%>
|
||||||
|
<% end %>
|
||||||
|
</div>
|
|
@ -0,0 +1,3 @@
|
||||||
|
<%= form_for @diploma, html: { multipart: true, "form-type"=>"ajax_form", "callback-method"=>"formCallback"}, url: panel_personal_diploma_desktop_personal_diplomas_path do |f| %>
|
||||||
|
<%= render partial: 'form', locals: {:f => f} %>
|
||||||
|
<%end%>
|
|
@ -1,4 +1,55 @@
|
||||||
en:
|
en:
|
||||||
|
|
||||||
module_name:
|
module_name:
|
||||||
personal_diploma: Diploma
|
personal_diploma: Diploma
|
||||||
|
personal_diploma:
|
||||||
|
paper_title : "Paper Title"
|
||||||
|
book_title : "Book Title"
|
||||||
|
extracted_chapters : "Extracted Chapters"
|
||||||
|
publishers : "Publishers"
|
||||||
|
authors : "Authors"
|
||||||
|
tags : "Tags"
|
||||||
|
year : "Year"
|
||||||
|
language : "Language"
|
||||||
|
isbn : "ISSN(ISBN)"
|
||||||
|
vol_no : "Vol.No"
|
||||||
|
issue_no : "Issue.No"
|
||||||
|
form_to_start : "From"
|
||||||
|
form_to_end : "To"
|
||||||
|
total_pages : "Total Pages"
|
||||||
|
keywords : "Keywords"
|
||||||
|
abstract : "Abstract"
|
||||||
|
publication_date : "Date of Publication"
|
||||||
|
url : "Reference URL"
|
||||||
|
note : "Note"
|
||||||
|
level_type : "Level Type"
|
||||||
|
author_type : "Author Type"
|
||||||
|
from : "From"
|
||||||
|
to : "To"
|
||||||
|
file : "File"
|
||||||
|
file_name : "File name"
|
||||||
|
description : "File Description"
|
||||||
|
pages : "Pages"
|
||||||
|
book_paper_type : "Book Paper Type"
|
||||||
|
school_name : "School Name"
|
||||||
|
country : "Country"
|
||||||
|
department : "Department"
|
||||||
|
degree : "Degree"
|
||||||
|
|
||||||
|
create_success : "Successfully Create"
|
||||||
|
update_success : "Successfully Update"
|
||||||
|
delete_success : "Successfully Delete"
|
||||||
|
add: "Add"
|
||||||
|
back: "Back"
|
||||||
|
delete: "Delete"
|
||||||
|
edit: "Edit"
|
||||||
|
nothing: "Nothing"
|
||||||
|
show: "Show"
|
||||||
|
sure?: "Are you sure?"
|
||||||
|
update: "Update"
|
||||||
|
yes_: "Yes"
|
||||||
|
no_: "No"
|
||||||
|
cancel : "Cancel"
|
||||||
|
save: "save"
|
||||||
|
hintText: "Type in a search term"
|
||||||
|
noResultsText: "No results"
|
||||||
|
searchingText: "Searching…"
|
||||||
|
|
|
@ -1,4 +1,55 @@
|
||||||
zh_tw:
|
zh_tw:
|
||||||
|
|
||||||
module_name:
|
module_name:
|
||||||
personal_diploma: 學歷
|
personal_diploma: 期刊著作
|
||||||
|
personal_diploma:
|
||||||
|
paper_title : "論文名稱"
|
||||||
|
book_title : "期刊名稱"
|
||||||
|
extracted_chapters : "Extracted Chapters"
|
||||||
|
publishers : "Publishers"
|
||||||
|
authors : "作者"
|
||||||
|
tags : "領域"
|
||||||
|
year : "年度"
|
||||||
|
language : "語言"
|
||||||
|
isbn : "ISSN(ISBN)"
|
||||||
|
vol_no : "卷數"
|
||||||
|
issue_no : "期數"
|
||||||
|
form_to_start : "起"
|
||||||
|
form_to_end : "訖"
|
||||||
|
total_pages : "總頁數"
|
||||||
|
keywords : "關鍵字"
|
||||||
|
abstract : "摘要"
|
||||||
|
publication_date : "發表日期"
|
||||||
|
url : "參考連結"
|
||||||
|
note : "記事"
|
||||||
|
level_type : "期刊類別"
|
||||||
|
author_type : "作者類別"
|
||||||
|
from : "起"
|
||||||
|
to : "訖"
|
||||||
|
file : "檔案"
|
||||||
|
file_name : "檔案名稱"
|
||||||
|
description : "描述"
|
||||||
|
pages : "Pages"
|
||||||
|
book_paper_type : "Book Paper Type"
|
||||||
|
school_name : "School Name"
|
||||||
|
country : "Country"
|
||||||
|
department : "Department"
|
||||||
|
degree : "Degree"
|
||||||
|
|
||||||
|
create_success : "新增完成!!"
|
||||||
|
update_success : "更新完成!!"
|
||||||
|
delete_success : "刪除成功!!"
|
||||||
|
add: "新增"
|
||||||
|
back: "返回"
|
||||||
|
delete: "刪除"
|
||||||
|
edit: "編輯"
|
||||||
|
nothing: "無"
|
||||||
|
show: "顯示"
|
||||||
|
sure?: "您肯定嗎?"
|
||||||
|
update: "更新"
|
||||||
|
yes_: "是"
|
||||||
|
no_: "否"
|
||||||
|
cancel : "取消"
|
||||||
|
save: "儲存"
|
||||||
|
hintText: "請輸入搜尋關鍵字"
|
||||||
|
noResultsText: "沒有相關的比對結果"
|
||||||
|
searchingText: "搜尋中…"
|
||||||
|
|
|
@ -2,6 +2,10 @@ Rails.application.routes.draw do
|
||||||
|
|
||||||
namespace :panel do
|
namespace :panel do
|
||||||
namespace :personal_diploma do
|
namespace :personal_diploma do
|
||||||
|
namespace :desktop do
|
||||||
|
match "diploma_window" => "personal_diplomas#diploma_window"
|
||||||
|
resources :personal_diplomas
|
||||||
|
end
|
||||||
namespace :back_end do
|
namespace :back_end do
|
||||||
|
|
||||||
match 'diploma_setting' => "diplomas#diploma_setting" ,:as => :diploma_setting
|
match 'diploma_setting' => "diplomas#diploma_setting" ,:as => :diploma_setting
|
||||||
|
|
|
@ -0,0 +1,158 @@
|
||||||
|
orbitDesktop.prototype.initializePersonalExperience = function(target,url,cache){ // this init journal papers
|
||||||
|
this.initializePersonalExperience.formCallback = function(data){
|
||||||
|
if(data.success){
|
||||||
|
o.notify(data.msg,"success");
|
||||||
|
o.sub_menu_item($("div[content-type=menu] a").eq(0));
|
||||||
|
}else{
|
||||||
|
o.notify(data.msg,"alert");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
this.initializePersonalExperience.list = function(){ // to open list part in journal papers page
|
||||||
|
var journalData;
|
||||||
|
var bindHandlers = function(){ // to bind handlers for list page
|
||||||
|
|
||||||
|
}
|
||||||
|
bindHandlers();
|
||||||
|
|
||||||
|
var bindSecondaryHandlers = function(){
|
||||||
|
$("#journal_p div#paper_list a.icon-check-empty").click(function(){
|
||||||
|
if($(this).hasClass("icon-check-empty")){
|
||||||
|
$(this).switchClass("icon-check-empty","icon-check",0);
|
||||||
|
} else if($(this) .hasClass("icon-check")) {
|
||||||
|
$(this).switchClass("icon-check","icon-check-empty",0);
|
||||||
|
} else if($(this).hasClass("icon-star")){
|
||||||
|
$(this).removeClass("icon-star").addClass("icon-star-empty");
|
||||||
|
} else if($(this).hasClass("icon-star-empty")){
|
||||||
|
$(this).removeClass("icon-star-empty").addClass("icon-star");
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.initializePersonalExperience.experienceDelete = function(data,dom){
|
||||||
|
var parent = dom.parent().parent();
|
||||||
|
if(data.success){
|
||||||
|
parent.hide("slide",function(){parent.remove();});
|
||||||
|
o.notify(data.msg,"success");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
this.initializePersonalExperience.cancelexperience = function(){
|
||||||
|
o.highlight_sub_menu_item(0);
|
||||||
|
}
|
||||||
|
|
||||||
|
this.initializePersonalExperience.editexperience = function(){
|
||||||
|
o.highlight_sub_menu_item(1);
|
||||||
|
var uploadFiles = function(){
|
||||||
|
$('#add_plugin_file a.add').click(function(){
|
||||||
|
var new_id = $(this).prev().attr('value');
|
||||||
|
var old_id = new RegExp("new_writing_journal_files", "g");
|
||||||
|
$(this).prev().attr('value', parseInt(new_id) + 1);
|
||||||
|
var x = get_html(old_id,new_id);
|
||||||
|
var newfield = $(x);
|
||||||
|
$(this).parents('table').append(newfield);
|
||||||
|
newfield.find('.action a.delete').click(function(){
|
||||||
|
newfield.remove();
|
||||||
|
});
|
||||||
|
return false;
|
||||||
|
});
|
||||||
|
$('.action a.remove_existing_record').click(function(){
|
||||||
|
$(this).next('.should_destroy').attr('value', 1);
|
||||||
|
$("tr#add_plugin_file_" + $(this).prev().attr('value')).hide();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
var preData = function(){
|
||||||
|
$("#writing_journal_author_tokens").select2('data', JSON.parse($("#writing_journal_author_tokens").attr('data-pre')));
|
||||||
|
}
|
||||||
|
uploadFiles();
|
||||||
|
// preData();
|
||||||
|
}
|
||||||
|
|
||||||
|
this.initializePersonalExperience.addexperience = function(){ // to open add pages in journal papers page
|
||||||
|
var uploadFiles = function(){
|
||||||
|
$('#add_plugin_file a.add').click(function(){
|
||||||
|
var new_id = $(this).prev().attr('value');
|
||||||
|
var old_id = new RegExp("new_writing_journal_files", "g");
|
||||||
|
$(this).prev().attr('value', parseInt(new_id) + 1);
|
||||||
|
var x = get_html(old_id,new_id);
|
||||||
|
var newfield = $(x);
|
||||||
|
$(this).parents('table').append(newfield);
|
||||||
|
newfield.find('.action a.delete').click(function(){
|
||||||
|
newfield.remove();
|
||||||
|
});
|
||||||
|
return false;
|
||||||
|
});
|
||||||
|
$('.action a.remove_existing_record').click(function(){
|
||||||
|
$(this).next('.should_destroy').attr('value', 1);
|
||||||
|
$("tr#add_plugin_file_" + $(this).prev().attr('value')).hide();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
// console.log("hi");
|
||||||
|
var bindHandlers = function(){
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
bindHandlers();
|
||||||
|
uploadFiles();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
this.initializePersonalExperience.coAuthorformCallback = function(data){
|
||||||
|
if(data.success){
|
||||||
|
o.notify(data.msg,"success");
|
||||||
|
o.sub_menu_item($("div[content-type=menu] a").eq(3));
|
||||||
|
}else{
|
||||||
|
o.notify(data.msg,"alert");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.initializePersonalExperience.coauthor = function(){ // to open add pages in coauthor page
|
||||||
|
var bindHandlers = function(){ // to bind handlers for add page
|
||||||
|
|
||||||
|
}
|
||||||
|
bindHandlers();
|
||||||
|
}
|
||||||
|
this.initializePersonalExperience.coauthorRelationForm = function(data){
|
||||||
|
if(data.success){
|
||||||
|
o.notify(data.msg,"success");
|
||||||
|
$("#co_author_relation_table").html(data.newvalue);
|
||||||
|
}else{
|
||||||
|
o.notify(data.msg,"alert");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.initializePersonalExperience.coauthorRelationEditForm = function(data){
|
||||||
|
if(data.success){
|
||||||
|
o.notify(data.msg,"success");
|
||||||
|
var x = o.layout_data.generate_layout_html(data.newvalue);
|
||||||
|
$("div[container=true] div.overview").html(x.markup);
|
||||||
|
}else{
|
||||||
|
o.notify(data.msg,"alert");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.initializePersonalExperience.allnone = function(d,o){
|
||||||
|
switch(o.attr("href")){
|
||||||
|
case "all":
|
||||||
|
$("div.overview a.icon-check-empty").removeClass("icon-check-empty").addClass("icon-check");
|
||||||
|
break;
|
||||||
|
case "none":
|
||||||
|
$("div.overview a.icon-check").removeClass("icon-check").addClass("icon-check-empty");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.initializePersonalExperience.allnone = function(d,o){
|
||||||
|
switch(o.attr("href")){
|
||||||
|
case "all":
|
||||||
|
$("div.overview a.icon-check-empty").removeClass("icon-check-empty").addClass("icon-check");
|
||||||
|
break;
|
||||||
|
case "none":
|
||||||
|
$("div.overview a.icon-check").removeClass("icon-check").addClass("icon-check-empty");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,115 @@
|
||||||
|
/* Books */
|
||||||
|
[page-name="books_list"] .list_t_item .inner {
|
||||||
|
padding-left: 30px; }
|
||||||
|
[page-name="books_list"] .list_item_action {
|
||||||
|
font-size: 12px;
|
||||||
|
float: left;
|
||||||
|
margin-left: -30px; }
|
||||||
|
[page-name="books_list"] .list_item_action a {
|
||||||
|
display: block;
|
||||||
|
width: 20px;
|
||||||
|
height: 20px;
|
||||||
|
line-height: 20px;
|
||||||
|
margin: 1px 1px 6px 1px; }
|
||||||
|
[page-name="books_list"] .list_item_action .icon-star-empty {
|
||||||
|
color: #999;
|
||||||
|
font-size: 20px; }
|
||||||
|
[page-name="books_list"] .list_item_action .icon-star {
|
||||||
|
color: #faa732;
|
||||||
|
font-size: 20px; }
|
||||||
|
[page-name="books_list"] .list_item_action .icon-check-empty {
|
||||||
|
color: #999;
|
||||||
|
font-size: 20px; }
|
||||||
|
[page-name="books_list"] .list_item_action .icon-check {
|
||||||
|
color: #333;
|
||||||
|
font-size: 20px; }
|
||||||
|
[page-name="books_list"] .file_view .list_t_des {
|
||||||
|
overflow: hidden; }
|
||||||
|
[page-name="books_list"] .file_view .file {
|
||||||
|
float: left;
|
||||||
|
width: 120px;
|
||||||
|
height: 50px;
|
||||||
|
padding: 6px;
|
||||||
|
margin: 1px;
|
||||||
|
position: relative;
|
||||||
|
-webkit-box-sizing: border-box;
|
||||||
|
/* webkit */
|
||||||
|
-khtml-box-sizing: border-box;
|
||||||
|
/* konqueror */
|
||||||
|
-moz-box-sizing: border-box;
|
||||||
|
/* firefox */
|
||||||
|
-ms-box-sizing: border-box;
|
||||||
|
/* ie */
|
||||||
|
box-sizing: border-box;
|
||||||
|
/* css3 */ }
|
||||||
|
[page-name="books_list"] .file_view .file:hover {
|
||||||
|
background-color: #f7f7f7; }
|
||||||
|
[page-name="books_list"] .file_view .file img {
|
||||||
|
width: 38px;
|
||||||
|
height: 38px;
|
||||||
|
position: absolute;
|
||||||
|
left: 6px;
|
||||||
|
top: 6px; }
|
||||||
|
[page-name="books_list"] .file_view .file .filetitle {
|
||||||
|
display: block;
|
||||||
|
width: 100%;
|
||||||
|
height: 38px;
|
||||||
|
padding-left: 40px;
|
||||||
|
overflow: hidden;
|
||||||
|
-webkit-box-sizing: border-box;
|
||||||
|
/* webkit */
|
||||||
|
-khtml-box-sizing: border-box;
|
||||||
|
/* konqueror */
|
||||||
|
-moz-box-sizing: border-box;
|
||||||
|
/* firefox */
|
||||||
|
-ms-box-sizing: border-box;
|
||||||
|
/* ie */
|
||||||
|
box-sizing: border-box;
|
||||||
|
/* css3 */ }
|
||||||
|
|
||||||
|
/* Books Books list */
|
||||||
|
[page-name="books_books"] .datalist_item .inner {
|
||||||
|
padding-left: 30px; }
|
||||||
|
[page-name="books_books"] .list_item_action {
|
||||||
|
font-size: 12px;
|
||||||
|
float: left;
|
||||||
|
margin-left: -30px; }
|
||||||
|
[page-name="books_books"] .list_item_action i {
|
||||||
|
color: #999;
|
||||||
|
font-size: 20px;
|
||||||
|
display: block;
|
||||||
|
width: 20px;
|
||||||
|
height: 20px;
|
||||||
|
line-height: 20px;
|
||||||
|
margin: 1px 1px 6px 1px; }
|
||||||
|
[page-name="books_books"] .list_t_desc {
|
||||||
|
font-family: Arial, sans-serif;
|
||||||
|
font-size: 12px;
|
||||||
|
color: #999; }
|
||||||
|
|
||||||
|
/* Books Co-Author */
|
||||||
|
[page-name="books_coauthor"] .list_t_item {
|
||||||
|
height: 110px; }
|
||||||
|
[page-name="books_coauthor"] .list_item_function a {
|
||||||
|
display: inline-block;
|
||||||
|
padding: 4px;
|
||||||
|
font-family: Arial, sans-serif;
|
||||||
|
font-size: 11px;
|
||||||
|
-webkit-text-size-adjust: none; }
|
||||||
|
[page-name="books_coauthor"] .info {
|
||||||
|
font-family: Arial, sans-serif; }
|
||||||
|
[page-name="books_coauthor"] .info li {
|
||||||
|
margin-bottom: 8px;
|
||||||
|
color: #999; }
|
||||||
|
[page-name="books_coauthor"] .info .name {
|
||||||
|
font-size: 18px;
|
||||||
|
line-height: 24px;
|
||||||
|
color: #333; }
|
||||||
|
|
||||||
|
/* Books Co-Author Relationship*/
|
||||||
|
[page-name="books_coauthor_relation"] .edit_co_author_relation {
|
||||||
|
/*margin-left: -10px;*/ }
|
||||||
|
[page-name="books_coauthor_relation"] .form_space {
|
||||||
|
margin-bottom: 10px;
|
||||||
|
font-size: 18px;
|
||||||
|
font-family: Arial, sans-serif; }
|
|
@ -0,0 +1,123 @@
|
||||||
|
@import "desktop-helper";
|
||||||
|
|
||||||
|
/* Books */
|
||||||
|
[page-name="books_list"] {
|
||||||
|
.list_t_item .inner { padding-left: 30px; }
|
||||||
|
.list_item_action {
|
||||||
|
font-size: 12px;
|
||||||
|
float: left;
|
||||||
|
margin-left: -30px;
|
||||||
|
|
||||||
|
a {
|
||||||
|
display: block;
|
||||||
|
width: 20px;
|
||||||
|
height: 20px;
|
||||||
|
line-height: 20px;
|
||||||
|
margin: 1px 1px 6px 1px;
|
||||||
|
}
|
||||||
|
.icon-star-empty { color: #999; font-size: 20px; }
|
||||||
|
.icon-star { color: #faa732; font-size: 20px; }
|
||||||
|
.icon-check-empty { color: #999; font-size: 20px; }
|
||||||
|
.icon-check { color: #333; font-size: 20px; }
|
||||||
|
}
|
||||||
|
|
||||||
|
.file_view {
|
||||||
|
.list_t_des {
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
.file {
|
||||||
|
float: left;
|
||||||
|
width: 120px;
|
||||||
|
height: 50px;
|
||||||
|
padding: 6px;
|
||||||
|
margin: 1px;
|
||||||
|
position: relative;
|
||||||
|
@include box-sizing;
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
background-color: lighten($gray, 10%);
|
||||||
|
}
|
||||||
|
img {
|
||||||
|
width: 38px;
|
||||||
|
height: 38px;
|
||||||
|
position: absolute;
|
||||||
|
left: 6px;
|
||||||
|
top: 6px;
|
||||||
|
}
|
||||||
|
.filetitle {
|
||||||
|
display: block;
|
||||||
|
width: 100%;
|
||||||
|
height: 38px;
|
||||||
|
padding-left: 40px;
|
||||||
|
overflow: hidden;
|
||||||
|
@include box-sizing;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Books Books list */
|
||||||
|
[page-name="books_books"] {
|
||||||
|
|
||||||
|
.datalist_item .inner {
|
||||||
|
padding-left: 30px;
|
||||||
|
}
|
||||||
|
.list_item_action {
|
||||||
|
font-size: 12px;
|
||||||
|
float: left;
|
||||||
|
margin-left: -30px;
|
||||||
|
}
|
||||||
|
.list_item_action i {
|
||||||
|
color: #999;
|
||||||
|
font-size: 20px;
|
||||||
|
display: block;
|
||||||
|
width: 20px;
|
||||||
|
height: 20px;
|
||||||
|
line-height: 20px;
|
||||||
|
margin: 1px 1px 6px 1px;
|
||||||
|
}
|
||||||
|
.list_t_desc {
|
||||||
|
font-family: Arial, sans-serif;
|
||||||
|
font-size: 12px;
|
||||||
|
color: #999;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Books Co-Author */
|
||||||
|
[page-name="books_coauthor"] {
|
||||||
|
.list_t_item {
|
||||||
|
height: 110px;
|
||||||
|
}
|
||||||
|
.list_item_function {}
|
||||||
|
.list_item_function a {
|
||||||
|
display: inline-block;
|
||||||
|
padding: 4px;
|
||||||
|
font-family: Arial, sans-serif;
|
||||||
|
font-size: 11px;
|
||||||
|
-webkit-text-size-adjust: none;
|
||||||
|
}
|
||||||
|
.info {
|
||||||
|
font-family: Arial, sans-serif;
|
||||||
|
}
|
||||||
|
.info li {
|
||||||
|
margin-bottom: 8px;
|
||||||
|
color: #999;
|
||||||
|
}
|
||||||
|
.info .name {
|
||||||
|
font-size: 18px;
|
||||||
|
line-height: 24px;
|
||||||
|
color: #333;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Books Co-Author Relationship*/
|
||||||
|
[page-name="books_coauthor_relation"]{
|
||||||
|
.edit_co_author_relation {
|
||||||
|
/*margin-left: -10px;*/
|
||||||
|
}
|
||||||
|
.form_space {
|
||||||
|
margin-bottom: 10px;
|
||||||
|
font-size: 18px;
|
||||||
|
font-family: Arial, sans-serif;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,72 @@
|
||||||
|
class Panel::PersonalExperience::Desktop::PersonalExperiencesController < ApplicationController
|
||||||
|
|
||||||
|
def index
|
||||||
|
@experiences = Experience.where(create_user_id: current_user.id)
|
||||||
|
@view_by = params[:view]
|
||||||
|
page = params[:page]
|
||||||
|
page ||= 1
|
||||||
|
|
||||||
|
@per_column = 5
|
||||||
|
|
||||||
|
case @view_by
|
||||||
|
when "abstract"
|
||||||
|
@per_column = 1
|
||||||
|
when "file"
|
||||||
|
@per_column = 2
|
||||||
|
end
|
||||||
|
|
||||||
|
if @view_by.nil?
|
||||||
|
@view_by = " "
|
||||||
|
@experiences = @experiences.asc(:organizationt_title)
|
||||||
|
else
|
||||||
|
@experiences = @experiences.asc(@view_by).asc(:organizationt_title)
|
||||||
|
end
|
||||||
|
@experiences = @experiences.page(page).per(50)
|
||||||
|
respond_to do |format|
|
||||||
|
format.html { render :layout => false}
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def new
|
||||||
|
@experience = Experience.new
|
||||||
|
# @author_types = BookAuthorType.all
|
||||||
|
render :layout => false
|
||||||
|
end
|
||||||
|
|
||||||
|
def create
|
||||||
|
params[:experience][:create_user_id] = current_user.id
|
||||||
|
@experience = Experience.new(params[:experience])
|
||||||
|
if @experience.save
|
||||||
|
render json: {success: true, msg: t('create_success')}.to_json
|
||||||
|
else
|
||||||
|
error_msg = @experience.errors.full_messages.join("<br />")
|
||||||
|
render json: {success: false, msg: error_msg}.to_json
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def edit
|
||||||
|
@experience = Experience.find(params[:id])
|
||||||
|
render :layout => false
|
||||||
|
end
|
||||||
|
|
||||||
|
def update
|
||||||
|
params[:experience][:create_user_id] = current_user.id
|
||||||
|
@experience = Experience.new(params[:experience])
|
||||||
|
if @experience.update_attributes(params[:writing_book])
|
||||||
|
render json: {success: true, msg: t('create_success')}.to_json
|
||||||
|
else
|
||||||
|
error_msg = @experience.errors.full_messages.join("<br />")
|
||||||
|
render json: {success: false, msg: error_msg}.to_json
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def destroy
|
||||||
|
@experience = Experience.find(params[:id])
|
||||||
|
@experience.destroy
|
||||||
|
render :json => {success: true, msg: t('delete_success')}
|
||||||
|
end
|
||||||
|
|
||||||
|
def experience_window
|
||||||
|
render :layout => false
|
||||||
|
end
|
||||||
|
end
|
|
@ -0,0 +1,96 @@
|
||||||
|
module Panel::PersonalExperience::Desktop::PersonalExperiencesHelper
|
||||||
|
def publication_record publication, view
|
||||||
|
content_tag :li,
|
||||||
|
"item" => "true",
|
||||||
|
:class => "list_t_item" do
|
||||||
|
marker + \
|
||||||
|
content(publication, view) + \
|
||||||
|
edit_or_delete(publication)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def marker
|
||||||
|
content_tag :div,
|
||||||
|
:class => "list_item_action" do
|
||||||
|
content_tag(:a, "",:href=>"",
|
||||||
|
:class => "icon-check-empty",
|
||||||
|
"toggle-onclick"=>"icon-check-empty icon-check",
|
||||||
|
"ajax-remote"=>"false") + \
|
||||||
|
content_tag(:a, "",:href=>"",
|
||||||
|
:class => "icon-star-empty",
|
||||||
|
"toggle-onclick"=>"icon-star-empty icon-star",
|
||||||
|
"ajax-remote"=>"false")
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def content publication, view
|
||||||
|
case view
|
||||||
|
when "organizationt_title"
|
||||||
|
des = content_tag(:div, publication.organizationt_title,
|
||||||
|
:class => "list_t_des")
|
||||||
|
when "job_title"
|
||||||
|
des = content_tag(:div, publication.job_title,
|
||||||
|
:class => "list_t_des")
|
||||||
|
when "department"
|
||||||
|
des = content_tag(:div, publication.department,
|
||||||
|
:class => "list_t_des")
|
||||||
|
when "file"
|
||||||
|
des = content_tag(:div, link_publication_file(publication),
|
||||||
|
:class => "list_t_des")
|
||||||
|
else
|
||||||
|
end
|
||||||
|
|
||||||
|
content_tag(:div, publication.organizationt_title,
|
||||||
|
:class => "list_t_title") + des
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
def edit_or_delete publication
|
||||||
|
content_tag :div,
|
||||||
|
:class => "list_item_function" do
|
||||||
|
content_tag(:a, t("edit"),
|
||||||
|
:class => "journal_paper_edit admbg2 admtxt",
|
||||||
|
:href => edit_panel_personal_experience_desktop_personal_experience_path(publication),
|
||||||
|
"callback-method" => "editexperience",
|
||||||
|
"ajax-remote" => "get") + \
|
||||||
|
content_tag(:a, t(:delete_),
|
||||||
|
"ajax-remote" => "delete",
|
||||||
|
"confirm-message" => t("sure?"),
|
||||||
|
"callback-method" => "experienceDelete",
|
||||||
|
:class => "journal_paper_delete admbg2 admtxt",
|
||||||
|
:href => panel_personal_experience_desktop_personal_experience_path(publication))
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def link_publication_file publication
|
||||||
|
publication.writing_conference_files.map{|file|
|
||||||
|
link_to(image_tag(check_file_type(file.file.url)) + \
|
||||||
|
content_tag(:span, file.title, :class => "filetitle"),
|
||||||
|
file.file.url,
|
||||||
|
:class => "file",
|
||||||
|
"target" => "_blank")
|
||||||
|
}.inject(:+)
|
||||||
|
end
|
||||||
|
|
||||||
|
def check_file_type file
|
||||||
|
if not file.nil?
|
||||||
|
file_type = MIME::Types.type_for(file).first.to_s.split("/")[1]
|
||||||
|
file_type = "/assets/ft-icons/#{file_type}/#{file_type}-48_32.png"
|
||||||
|
else
|
||||||
|
file_type = ""
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def generate_authors_name ids
|
||||||
|
author_name = ids.map{|m|
|
||||||
|
if m == "0"
|
||||||
|
#{:id => 0, :text => current_user.name, :email => current_user.email }
|
||||||
|
{:id => 0, :text => current_user.name }
|
||||||
|
else
|
||||||
|
#{:id => m, :text => ConferenceCoAuthor.find(m).co_author, :email => ConferenceCoAuthor.find(m).email}
|
||||||
|
{:id => m, :text => ConferenceCoAuthor.find(m).co_author}
|
||||||
|
end
|
||||||
|
}
|
||||||
|
author_name.to_json
|
||||||
|
end
|
||||||
|
end
|
|
@ -0,0 +1,93 @@
|
||||||
|
<div class="toolbar hh1">
|
||||||
|
<div class="fn_g hp">
|
||||||
|
|
||||||
|
<%= f.submit t("save"), name: "commit", class: "fn_btn ini_input hp hh1 thmc2 thmtxt" %>
|
||||||
|
<% if not @experience.new_record? %>
|
||||||
|
<%= submit_tag t("cancel"), :type => "button", "callback-method"=>"cancelexperience", "ajax-remote" => "get", :href => panel_personal_experience_desktop_personal_experiences_path, class: "fn_btn ini_input hp hh1 admbg2 admtxt" %>
|
||||||
|
|
||||||
|
<% end %>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1">Share</div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Full</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Abstract</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Friends</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Private</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Group</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1"><span class="icon-question-sign"></span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="overview" content-layout="column" base-width="420">
|
||||||
|
<div column="true">
|
||||||
|
<div class="s_form">
|
||||||
|
<ul>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= f.fields_for :organizationt_title_translations do |f| %>
|
||||||
|
<%= f.text_field locale,
|
||||||
|
size: "20",
|
||||||
|
placeholder: t("personal_experience.organizationt_title"),
|
||||||
|
class: "s_grid_12 s_grid",
|
||||||
|
value: (@experience.organizationt_title_translations[locale.to_s] rescue nil) %>
|
||||||
|
<% end %>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= f.fields_for :department_translations do |f| %>
|
||||||
|
<%= f.text_field locale,
|
||||||
|
size: "20",
|
||||||
|
placeholder: t("personal_experience.department"),
|
||||||
|
class: "s_grid_12 s_grid",
|
||||||
|
value: (@experience.department_translations[locale.to_s] rescue nil) %>
|
||||||
|
<% end %>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= f.fields_for :job_title_translations do |f| %>
|
||||||
|
<%= f.text_field locale,
|
||||||
|
size: "20",
|
||||||
|
placeholder: t("personal_experience.job_title"),
|
||||||
|
class: "s_grid_12 s_grid",
|
||||||
|
value: (@experience.job_title_translations[locale.to_s] rescue nil) %>
|
||||||
|
<% end %>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= label_tag("", t("personal_experience.experience_category"), class: "s_grid_4 s_grid") %>
|
||||||
|
<%= f.select :experience_category_id, ExperienceCategory.all.collect {|t| [ t.title, t.id ]}, {:class => "s_grid s_grid_8"} %>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= label_tag("", t("personal_experience.start_date"), class: "s_grid_4 s_grid") %>
|
||||||
|
<%= f.date_select :start_date, {:use_month_numbers => true, :start_year => Time.now.year, :end_year => 1930, :order => [:year] }, {:class => 's_grid_4 s_grid'} %>
|
||||||
|
<%= f.date_select :start_date, {:use_month_numbers => true, :order => [:month, :day] }, {:class => 's_grid_2 s_grid'} %>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= label_tag("", t("personal_experience.end_date"), class: "s_grid_4 s_grid") %>
|
||||||
|
<%= f.date_select :end_date, {:use_month_numbers => true, :start_year => Time.now.year, :end_year => 1930, :order => [:year] }, {:class => 's_grid_4 s_grid'} %>
|
||||||
|
<%= f.date_select :end_date, {:use_month_numbers => true, :order => [:month, :day] }, {:class => 's_grid_2 s_grid'} %>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= label_tag("", t("personal_experience.url"), class: "s_grid_4 s_grid") %><%= f.text_field :url, size: "20", class: "s_grid_8 s_grid"%>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= f.text_area :keywords, size: "20x3", placeholder: t("personal_experience.keywords"), class: "s_grid_12 s_grid_h_2 s_grid"%>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= f.label :language, t("personal_experience.language"), :class => "s_grid s_grid_4" %>
|
||||||
|
<%= f.select :language, Experience::LANGUAGE_TYPES,{} ,{:class => "s_grid s_grid_8"} %>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div column="true">
|
||||||
|
<div class="s_form">
|
||||||
|
<ul>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= f.text_area :note, size: "20x3", placeholder: t("personal_experience.note"), value: @experience.note , class: "s_grid_12 s_grid s_grid_h_3"%>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
|
@ -0,0 +1,3 @@
|
||||||
|
<%= form_for @experience, html: { multipart: true, "form-type"=>"ajax_form", "callback-method"=>"formCallback"}, url: panel_personal_experience_desktop_personal_experiences_path(@personal_book) do |f| %>
|
||||||
|
<%= render partial: 'form', locals: {:f => f} %>
|
||||||
|
<%end%>
|
|
@ -0,0 +1,35 @@
|
||||||
|
<%= stylesheet_link_tag "/assets/personal_experience/desktop/personal_experience" %>
|
||||||
|
<%= javascript_include_tag "personal_experience/desktop/personal_experiences" %>
|
||||||
|
<div id="working">
|
||||||
|
<div id="content">
|
||||||
|
<div id="header" class="hh2">
|
||||||
|
<div class="dtitle w2 hh2 hp">
|
||||||
|
<span class="thmtxth">Experience/Working</span>
|
||||||
|
</div>
|
||||||
|
<div id="search_app" class="hfn w2 hh1 hp thmc3">
|
||||||
|
<input type="text" class="ini_input form" value="Search" id="searchbox" />
|
||||||
|
<input type="submit" class="ini_input submit thmc1" value="Submit"/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id="holder">
|
||||||
|
<div id="panel_l" class="ph">
|
||||||
|
<div class="s_menu sm_v" content-type="menu">
|
||||||
|
<ul id='setting_left_nav'>
|
||||||
|
<li><a href="<%= panel_personal_experience_desktop_personal_experiences_path %>" callback-method="list" class="hh1 w2 hp active thmc1 thmtxt" load="true" onclick='return false;'>List</a></li>
|
||||||
|
<li><a href="<%= new_panel_personal_experience_desktop_personal_experience_path %>" callback-method="addexperience" class="admtxt hh1 w2 hp" onclick='return false;'>Add/Edit</a></li>
|
||||||
|
<!-- <li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Books</a></li>
|
||||||
|
<li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Co-Authors</a></li>
|
||||||
|
<li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Tags & Keywords</a></li>
|
||||||
|
<li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Analysis</a></li>
|
||||||
|
<li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Import</a></li>
|
||||||
|
<li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Export</a></li> -->
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id="panel_r" container="true" class="ph pw admbg hp">
|
||||||
|
</div>
|
||||||
|
<div class="clear"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
|
@ -0,0 +1,84 @@
|
||||||
|
<div class="toolbar hh1">
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1"><span class="icon-check"></span></div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul id="journal_selection_options">
|
||||||
|
<li><a class="hp hh1 admtxt" href="all" ajax-remote="false" callback-method="allnone">All</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="none" ajax-remote="false" callback-method="allnone">None</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1">More</div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Delete</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Tag</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1">Tag</div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">All</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Starred</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">MIT</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1">Status</div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">All</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Published</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Pending</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1">View</div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul id="journal_view_selection">
|
||||||
|
<li><%= link_to "Journal", panel_personal_experience_desktop_personal_experiences_path + "?view=organizationt_title", :class => "hp hh1 admtxt", "ajax-remote" => "get" %></li>
|
||||||
|
<li><%= link_to "Title", panel_personal_experience_desktop_personal_experiences_path + "?view=paper_title", :class => "hp hh1 admtxt", "ajax-remote" => "get" %></li>
|
||||||
|
<li><%= link_to "File", panel_personal_experience_desktop_personal_experiences_path + "?view=job_title", :class => "hp hh1 admtxt", "ajax-remote" => "get" %></li>
|
||||||
|
<li><%= link_to "Keywords", panel_personal_experience_desktop_personal_experiences_path + "?view=department", :class => "hp hh1 admtxt", "ajax-remote" => "get" %></li>
|
||||||
|
<li><%= link_to "Abstract", panel_personal_experience_desktop_personal_experiences_path + "?view=file", :class => "hp hh1 admtxt", "ajax-remote" => "get" %></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1">Share</div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Full</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Abstract</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Friends</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Private</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Group</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1" id='ns'>New Share</div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul>
|
||||||
|
<li><a class="hp hh1 admtxt remote_url" href="<%= panel_personal_experience_desktop_personal_experiences_path %>">Full</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Abstract</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Friends</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Private</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Group</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1"><span class="icon-question-sign"></span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="overview" page-name="journal_p_list" content-layout="datalist" base-width="300" per-column="<%= @per_column.to_s %>" pagination-var="view=<%= @view_by %>&page" >
|
||||||
|
<% @experiences.each do |w| %>
|
||||||
|
<%= publication_record w, @view_by%>
|
||||||
|
<% end %>
|
||||||
|
</div>
|
|
@ -0,0 +1,3 @@
|
||||||
|
<%= form_for @experience, html: { multipart: true, "form-type"=>"ajax_form", "callback-method"=>"formCallback"}, url: panel_personal_experience_desktop_personal_experiences_path do |f| %>
|
||||||
|
<%= render partial: 'form', locals: {:f => f} %>
|
||||||
|
<%end%>
|
|
@ -1,4 +1,55 @@
|
||||||
en:
|
en:
|
||||||
|
|
||||||
module_name:
|
module_name:
|
||||||
personal_experience: Experience
|
personal_experience: Book
|
||||||
|
personal_experience:
|
||||||
|
department : "Department"
|
||||||
|
experience_category : "Experience Category"
|
||||||
|
organizationt_title : "Organization Title"
|
||||||
|
paper_title : "Paper Title"
|
||||||
|
book_title : "Book Title"
|
||||||
|
job_title : "Job Title"
|
||||||
|
extracted_chapters : "Extracted Chapters"
|
||||||
|
publishers : "Publishers"
|
||||||
|
authors : "Authors"
|
||||||
|
tags : "Tags"
|
||||||
|
year : "Year"
|
||||||
|
language : "Language"
|
||||||
|
isbn : "ISSN(ISBN)"
|
||||||
|
vol_no : "Vol.No"
|
||||||
|
issue_no : "Issue.No"
|
||||||
|
form_to_start : "From"
|
||||||
|
form_to_end : "To"
|
||||||
|
total_pages : "Total Pages"
|
||||||
|
keywords : "Keywords"
|
||||||
|
abstract : "Abstract"
|
||||||
|
publication_date : "Date of Publication"
|
||||||
|
url : "Reference URL"
|
||||||
|
note : "Note"
|
||||||
|
level_type : "Level Type"
|
||||||
|
author_type : "Author Type"
|
||||||
|
from : "From"
|
||||||
|
to : "To"
|
||||||
|
file : "File"
|
||||||
|
file_name : "File name"
|
||||||
|
description : "File Description"
|
||||||
|
pages : "Pages"
|
||||||
|
book_paper_type : "Book Paper Type"
|
||||||
|
|
||||||
|
create_success : "Successfully Create"
|
||||||
|
update_success : "Successfully Update"
|
||||||
|
delete_success : "Successfully Delete"
|
||||||
|
add: "Add"
|
||||||
|
back: "Back"
|
||||||
|
delete: "Delete"
|
||||||
|
edit: "Edit"
|
||||||
|
nothing: "Nothing"
|
||||||
|
show: "Show"
|
||||||
|
sure?: "Are you sure?"
|
||||||
|
update: "Update"
|
||||||
|
yes_: "Yes"
|
||||||
|
no_: "No"
|
||||||
|
cancel : "Cancel"
|
||||||
|
save: "save"
|
||||||
|
hintText: "Type in a search term"
|
||||||
|
noResultsText: "No results"
|
||||||
|
searchingText: "Searching…"
|
||||||
|
|
|
@ -1,5 +1,54 @@
|
||||||
zh_tw:
|
zh_tw:
|
||||||
|
|
||||||
module_name:
|
module_name:
|
||||||
personal_experience: 經歷
|
personal_experience: 期刊著作
|
||||||
|
personal_experience:
|
||||||
|
department : "Department"
|
||||||
|
organizationt_title : "Organization Title"
|
||||||
|
paper_title : "論文名稱"
|
||||||
|
book_title : "期刊名稱"
|
||||||
|
job_title : "Job Title"
|
||||||
|
extracted_chapters : "Extracted Chapters"
|
||||||
|
publishers : "Publishers"
|
||||||
|
authors : "作者"
|
||||||
|
tags : "領域"
|
||||||
|
year : "年度"
|
||||||
|
language : "語言"
|
||||||
|
isbn : "ISSN(ISBN)"
|
||||||
|
vol_no : "卷數"
|
||||||
|
issue_no : "期數"
|
||||||
|
form_to_start : "起"
|
||||||
|
form_to_end : "訖"
|
||||||
|
total_pages : "總頁數"
|
||||||
|
keywords : "關鍵字"
|
||||||
|
abstract : "摘要"
|
||||||
|
publication_date : "發表日期"
|
||||||
|
url : "參考連結"
|
||||||
|
note : "記事"
|
||||||
|
level_type : "期刊類別"
|
||||||
|
author_type : "作者類別"
|
||||||
|
from : "起"
|
||||||
|
to : "訖"
|
||||||
|
file : "檔案"
|
||||||
|
file_name : "檔案名稱"
|
||||||
|
description : "描述"
|
||||||
|
pages : "Pages"
|
||||||
|
book_paper_type : "Book Paper Type"
|
||||||
|
|
||||||
|
create_success : "新增完成!!"
|
||||||
|
update_success : "更新完成!!"
|
||||||
|
delete_success : "刪除成功!!"
|
||||||
|
add: "新增"
|
||||||
|
back: "返回"
|
||||||
|
delete: "刪除"
|
||||||
|
edit: "編輯"
|
||||||
|
nothing: "無"
|
||||||
|
show: "顯示"
|
||||||
|
sure?: "您肯定嗎?"
|
||||||
|
update: "更新"
|
||||||
|
yes_: "是"
|
||||||
|
no_: "否"
|
||||||
|
cancel : "取消"
|
||||||
|
save: "儲存"
|
||||||
|
hintText: "請輸入搜尋關鍵字"
|
||||||
|
noResultsText: "沒有相關的比對結果"
|
||||||
|
searchingText: "搜尋中…"
|
||||||
|
|
|
@ -2,6 +2,10 @@ Rails.application.routes.draw do
|
||||||
|
|
||||||
namespace :panel do
|
namespace :panel do
|
||||||
namespace :personal_experience do
|
namespace :personal_experience do
|
||||||
|
namespace :desktop do
|
||||||
|
match "experience_window" => "personal_experiences#experience_window"
|
||||||
|
resources :personal_experiences
|
||||||
|
end
|
||||||
namespace :back_end do
|
namespace :back_end do
|
||||||
|
|
||||||
match 'experience_setting' => "experiences#experience_setting" ,:as => :experience_setting
|
match 'experience_setting' => "experiences#experience_setting" ,:as => :experience_setting
|
||||||
|
|
|
@ -0,0 +1,158 @@
|
||||||
|
orbitDesktop.prototype.initializePersonalHonor = function(target,url,cache){ // this init journal papers
|
||||||
|
this.initializePersonalHonor.formCallback = function(data){
|
||||||
|
if(data.success){
|
||||||
|
o.notify(data.msg,"success");
|
||||||
|
o.sub_menu_item($("div[content-type=menu] a").eq(0));
|
||||||
|
}else{
|
||||||
|
o.notify(data.msg,"alert");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
this.initializePersonalHonor.list = function(){ // to open list part in journal papers page
|
||||||
|
var journalData;
|
||||||
|
var bindHandlers = function(){ // to bind handlers for list page
|
||||||
|
|
||||||
|
}
|
||||||
|
bindHandlers();
|
||||||
|
|
||||||
|
var bindSecondaryHandlers = function(){
|
||||||
|
$("#journal_p div#paper_list a.icon-check-empty").click(function(){
|
||||||
|
if($(this).hasClass("icon-check-empty")){
|
||||||
|
$(this).switchClass("icon-check-empty","icon-check",0);
|
||||||
|
} else if($(this) .hasClass("icon-check")) {
|
||||||
|
$(this).switchClass("icon-check","icon-check-empty",0);
|
||||||
|
} else if($(this).hasClass("icon-star")){
|
||||||
|
$(this).removeClass("icon-star").addClass("icon-star-empty");
|
||||||
|
} else if($(this).hasClass("icon-star-empty")){
|
||||||
|
$(this).removeClass("icon-star-empty").addClass("icon-star");
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.initializePersonalHonor.honorDelete = function(data,dom){
|
||||||
|
var parent = dom.parent().parent();
|
||||||
|
if(data.success){
|
||||||
|
parent.hide("slide",function(){parent.remove();});
|
||||||
|
o.notify(data.msg,"success");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
this.initializePersonalHonor.cancelhonor = function(){
|
||||||
|
o.highlight_sub_menu_item(0);
|
||||||
|
}
|
||||||
|
|
||||||
|
this.initializePersonalHonor.edithonor = function(){
|
||||||
|
o.highlight_sub_menu_item(1);
|
||||||
|
var uploadFiles = function(){
|
||||||
|
$('#add_plugin_file a.add').click(function(){
|
||||||
|
var new_id = $(this).prev().attr('value');
|
||||||
|
var old_id = new RegExp("new_writing_journal_files", "g");
|
||||||
|
$(this).prev().attr('value', parseInt(new_id) + 1);
|
||||||
|
var x = get_html(old_id,new_id);
|
||||||
|
var newfield = $(x);
|
||||||
|
$(this).parents('table').append(newfield);
|
||||||
|
newfield.find('.action a.delete').click(function(){
|
||||||
|
newfield.remove();
|
||||||
|
});
|
||||||
|
return false;
|
||||||
|
});
|
||||||
|
$('.action a.remove_existing_record').click(function(){
|
||||||
|
$(this).next('.should_destroy').attr('value', 1);
|
||||||
|
$("tr#add_plugin_file_" + $(this).prev().attr('value')).hide();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
var preData = function(){
|
||||||
|
$("#writing_journal_author_tokens").select2('data', JSON.parse($("#writing_journal_author_tokens").attr('data-pre')));
|
||||||
|
}
|
||||||
|
uploadFiles();
|
||||||
|
// preData();
|
||||||
|
}
|
||||||
|
|
||||||
|
this.initializePersonalHonor.addhonor = function(){ // to open add pages in journal papers page
|
||||||
|
var uploadFiles = function(){
|
||||||
|
$('#add_plugin_file a.add').click(function(){
|
||||||
|
var new_id = $(this).prev().attr('value');
|
||||||
|
var old_id = new RegExp("new_writing_journal_files", "g");
|
||||||
|
$(this).prev().attr('value', parseInt(new_id) + 1);
|
||||||
|
var x = get_html(old_id,new_id);
|
||||||
|
var newfield = $(x);
|
||||||
|
$(this).parents('table').append(newfield);
|
||||||
|
newfield.find('.action a.delete').click(function(){
|
||||||
|
newfield.remove();
|
||||||
|
});
|
||||||
|
return false;
|
||||||
|
});
|
||||||
|
$('.action a.remove_existing_record').click(function(){
|
||||||
|
$(this).next('.should_destroy').attr('value', 1);
|
||||||
|
$("tr#add_plugin_file_" + $(this).prev().attr('value')).hide();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
// console.log("hi");
|
||||||
|
var bindHandlers = function(){
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
bindHandlers();
|
||||||
|
uploadFiles();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
this.initializePersonalHonor.coAuthorformCallback = function(data){
|
||||||
|
if(data.success){
|
||||||
|
o.notify(data.msg,"success");
|
||||||
|
o.sub_menu_item($("div[content-type=menu] a").eq(3));
|
||||||
|
}else{
|
||||||
|
o.notify(data.msg,"alert");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.initializePersonalHonor.coauthor = function(){ // to open add pages in coauthor page
|
||||||
|
var bindHandlers = function(){ // to bind handlers for add page
|
||||||
|
|
||||||
|
}
|
||||||
|
bindHandlers();
|
||||||
|
}
|
||||||
|
this.initializePersonalHonor.coauthorRelationForm = function(data){
|
||||||
|
if(data.success){
|
||||||
|
o.notify(data.msg,"success");
|
||||||
|
$("#co_author_relation_table").html(data.newvalue);
|
||||||
|
}else{
|
||||||
|
o.notify(data.msg,"alert");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.initializePersonalHonor.coauthorRelationEditForm = function(data){
|
||||||
|
if(data.success){
|
||||||
|
o.notify(data.msg,"success");
|
||||||
|
var x = o.layout_data.generate_layout_html(data.newvalue);
|
||||||
|
$("div[container=true] div.overview").html(x.markup);
|
||||||
|
}else{
|
||||||
|
o.notify(data.msg,"alert");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.initializePersonalHonor.allnone = function(d,o){
|
||||||
|
switch(o.attr("href")){
|
||||||
|
case "all":
|
||||||
|
$("div.overview a.icon-check-empty").removeClass("icon-check-empty").addClass("icon-check");
|
||||||
|
break;
|
||||||
|
case "none":
|
||||||
|
$("div.overview a.icon-check").removeClass("icon-check").addClass("icon-check-empty");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.initializePersonalHonor.allnone = function(d,o){
|
||||||
|
switch(o.attr("href")){
|
||||||
|
case "all":
|
||||||
|
$("div.overview a.icon-check-empty").removeClass("icon-check-empty").addClass("icon-check");
|
||||||
|
break;
|
||||||
|
case "none":
|
||||||
|
$("div.overview a.icon-check").removeClass("icon-check").addClass("icon-check-empty");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,115 @@
|
||||||
|
/* Books */
|
||||||
|
[page-name="books_list"] .list_t_item .inner {
|
||||||
|
padding-left: 30px; }
|
||||||
|
[page-name="books_list"] .list_item_action {
|
||||||
|
font-size: 12px;
|
||||||
|
float: left;
|
||||||
|
margin-left: -30px; }
|
||||||
|
[page-name="books_list"] .list_item_action a {
|
||||||
|
display: block;
|
||||||
|
width: 20px;
|
||||||
|
height: 20px;
|
||||||
|
line-height: 20px;
|
||||||
|
margin: 1px 1px 6px 1px; }
|
||||||
|
[page-name="books_list"] .list_item_action .icon-star-empty {
|
||||||
|
color: #999;
|
||||||
|
font-size: 20px; }
|
||||||
|
[page-name="books_list"] .list_item_action .icon-star {
|
||||||
|
color: #faa732;
|
||||||
|
font-size: 20px; }
|
||||||
|
[page-name="books_list"] .list_item_action .icon-check-empty {
|
||||||
|
color: #999;
|
||||||
|
font-size: 20px; }
|
||||||
|
[page-name="books_list"] .list_item_action .icon-check {
|
||||||
|
color: #333;
|
||||||
|
font-size: 20px; }
|
||||||
|
[page-name="books_list"] .file_view .list_t_des {
|
||||||
|
overflow: hidden; }
|
||||||
|
[page-name="books_list"] .file_view .file {
|
||||||
|
float: left;
|
||||||
|
width: 120px;
|
||||||
|
height: 50px;
|
||||||
|
padding: 6px;
|
||||||
|
margin: 1px;
|
||||||
|
position: relative;
|
||||||
|
-webkit-box-sizing: border-box;
|
||||||
|
/* webkit */
|
||||||
|
-khtml-box-sizing: border-box;
|
||||||
|
/* konqueror */
|
||||||
|
-moz-box-sizing: border-box;
|
||||||
|
/* firefox */
|
||||||
|
-ms-box-sizing: border-box;
|
||||||
|
/* ie */
|
||||||
|
box-sizing: border-box;
|
||||||
|
/* css3 */ }
|
||||||
|
[page-name="books_list"] .file_view .file:hover {
|
||||||
|
background-color: #f7f7f7; }
|
||||||
|
[page-name="books_list"] .file_view .file img {
|
||||||
|
width: 38px;
|
||||||
|
height: 38px;
|
||||||
|
position: absolute;
|
||||||
|
left: 6px;
|
||||||
|
top: 6px; }
|
||||||
|
[page-name="books_list"] .file_view .file .filetitle {
|
||||||
|
display: block;
|
||||||
|
width: 100%;
|
||||||
|
height: 38px;
|
||||||
|
padding-left: 40px;
|
||||||
|
overflow: hidden;
|
||||||
|
-webkit-box-sizing: border-box;
|
||||||
|
/* webkit */
|
||||||
|
-khtml-box-sizing: border-box;
|
||||||
|
/* konqueror */
|
||||||
|
-moz-box-sizing: border-box;
|
||||||
|
/* firefox */
|
||||||
|
-ms-box-sizing: border-box;
|
||||||
|
/* ie */
|
||||||
|
box-sizing: border-box;
|
||||||
|
/* css3 */ }
|
||||||
|
|
||||||
|
/* Books Books list */
|
||||||
|
[page-name="books_books"] .datalist_item .inner {
|
||||||
|
padding-left: 30px; }
|
||||||
|
[page-name="books_books"] .list_item_action {
|
||||||
|
font-size: 12px;
|
||||||
|
float: left;
|
||||||
|
margin-left: -30px; }
|
||||||
|
[page-name="books_books"] .list_item_action i {
|
||||||
|
color: #999;
|
||||||
|
font-size: 20px;
|
||||||
|
display: block;
|
||||||
|
width: 20px;
|
||||||
|
height: 20px;
|
||||||
|
line-height: 20px;
|
||||||
|
margin: 1px 1px 6px 1px; }
|
||||||
|
[page-name="books_books"] .list_t_desc {
|
||||||
|
font-family: Arial, sans-serif;
|
||||||
|
font-size: 12px;
|
||||||
|
color: #999; }
|
||||||
|
|
||||||
|
/* Books Co-Author */
|
||||||
|
[page-name="books_coauthor"] .list_t_item {
|
||||||
|
height: 110px; }
|
||||||
|
[page-name="books_coauthor"] .list_item_function a {
|
||||||
|
display: inline-block;
|
||||||
|
padding: 4px;
|
||||||
|
font-family: Arial, sans-serif;
|
||||||
|
font-size: 11px;
|
||||||
|
-webkit-text-size-adjust: none; }
|
||||||
|
[page-name="books_coauthor"] .info {
|
||||||
|
font-family: Arial, sans-serif; }
|
||||||
|
[page-name="books_coauthor"] .info li {
|
||||||
|
margin-bottom: 8px;
|
||||||
|
color: #999; }
|
||||||
|
[page-name="books_coauthor"] .info .name {
|
||||||
|
font-size: 18px;
|
||||||
|
line-height: 24px;
|
||||||
|
color: #333; }
|
||||||
|
|
||||||
|
/* Books Co-Author Relationship*/
|
||||||
|
[page-name="books_coauthor_relation"] .edit_co_author_relation {
|
||||||
|
/*margin-left: -10px;*/ }
|
||||||
|
[page-name="books_coauthor_relation"] .form_space {
|
||||||
|
margin-bottom: 10px;
|
||||||
|
font-size: 18px;
|
||||||
|
font-family: Arial, sans-serif; }
|
|
@ -0,0 +1,123 @@
|
||||||
|
@import "desktop-helper";
|
||||||
|
|
||||||
|
/* Books */
|
||||||
|
[page-name="books_list"] {
|
||||||
|
.list_t_item .inner { padding-left: 30px; }
|
||||||
|
.list_item_action {
|
||||||
|
font-size: 12px;
|
||||||
|
float: left;
|
||||||
|
margin-left: -30px;
|
||||||
|
|
||||||
|
a {
|
||||||
|
display: block;
|
||||||
|
width: 20px;
|
||||||
|
height: 20px;
|
||||||
|
line-height: 20px;
|
||||||
|
margin: 1px 1px 6px 1px;
|
||||||
|
}
|
||||||
|
.icon-star-empty { color: #999; font-size: 20px; }
|
||||||
|
.icon-star { color: #faa732; font-size: 20px; }
|
||||||
|
.icon-check-empty { color: #999; font-size: 20px; }
|
||||||
|
.icon-check { color: #333; font-size: 20px; }
|
||||||
|
}
|
||||||
|
|
||||||
|
.file_view {
|
||||||
|
.list_t_des {
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
.file {
|
||||||
|
float: left;
|
||||||
|
width: 120px;
|
||||||
|
height: 50px;
|
||||||
|
padding: 6px;
|
||||||
|
margin: 1px;
|
||||||
|
position: relative;
|
||||||
|
@include box-sizing;
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
background-color: lighten($gray, 10%);
|
||||||
|
}
|
||||||
|
img {
|
||||||
|
width: 38px;
|
||||||
|
height: 38px;
|
||||||
|
position: absolute;
|
||||||
|
left: 6px;
|
||||||
|
top: 6px;
|
||||||
|
}
|
||||||
|
.filetitle {
|
||||||
|
display: block;
|
||||||
|
width: 100%;
|
||||||
|
height: 38px;
|
||||||
|
padding-left: 40px;
|
||||||
|
overflow: hidden;
|
||||||
|
@include box-sizing;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Books Books list */
|
||||||
|
[page-name="books_books"] {
|
||||||
|
|
||||||
|
.datalist_item .inner {
|
||||||
|
padding-left: 30px;
|
||||||
|
}
|
||||||
|
.list_item_action {
|
||||||
|
font-size: 12px;
|
||||||
|
float: left;
|
||||||
|
margin-left: -30px;
|
||||||
|
}
|
||||||
|
.list_item_action i {
|
||||||
|
color: #999;
|
||||||
|
font-size: 20px;
|
||||||
|
display: block;
|
||||||
|
width: 20px;
|
||||||
|
height: 20px;
|
||||||
|
line-height: 20px;
|
||||||
|
margin: 1px 1px 6px 1px;
|
||||||
|
}
|
||||||
|
.list_t_desc {
|
||||||
|
font-family: Arial, sans-serif;
|
||||||
|
font-size: 12px;
|
||||||
|
color: #999;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Books Co-Author */
|
||||||
|
[page-name="books_coauthor"] {
|
||||||
|
.list_t_item {
|
||||||
|
height: 110px;
|
||||||
|
}
|
||||||
|
.list_item_function {}
|
||||||
|
.list_item_function a {
|
||||||
|
display: inline-block;
|
||||||
|
padding: 4px;
|
||||||
|
font-family: Arial, sans-serif;
|
||||||
|
font-size: 11px;
|
||||||
|
-webkit-text-size-adjust: none;
|
||||||
|
}
|
||||||
|
.info {
|
||||||
|
font-family: Arial, sans-serif;
|
||||||
|
}
|
||||||
|
.info li {
|
||||||
|
margin-bottom: 8px;
|
||||||
|
color: #999;
|
||||||
|
}
|
||||||
|
.info .name {
|
||||||
|
font-size: 18px;
|
||||||
|
line-height: 24px;
|
||||||
|
color: #333;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Books Co-Author Relationship*/
|
||||||
|
[page-name="books_coauthor_relation"]{
|
||||||
|
.edit_co_author_relation {
|
||||||
|
/*margin-left: -10px;*/
|
||||||
|
}
|
||||||
|
.form_space {
|
||||||
|
margin-bottom: 10px;
|
||||||
|
font-size: 18px;
|
||||||
|
font-family: Arial, sans-serif;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,71 @@
|
||||||
|
class Panel::PersonalHonor::Desktop::PersonalHonorsController < ApplicationController
|
||||||
|
|
||||||
|
def index
|
||||||
|
@honors = Honor.where(create_user_id: current_user.id)
|
||||||
|
@view_by = params[:view]
|
||||||
|
page = params[:page]
|
||||||
|
page ||= 1
|
||||||
|
|
||||||
|
@per_column = 5
|
||||||
|
|
||||||
|
case @view_by
|
||||||
|
when "abstract"
|
||||||
|
@per_column = 1
|
||||||
|
when "file"
|
||||||
|
@per_column = 2
|
||||||
|
end
|
||||||
|
|
||||||
|
if @view_by.nil?
|
||||||
|
@view_by = " "
|
||||||
|
@honors = @honors.asc(:paper_title)
|
||||||
|
else
|
||||||
|
@honors = @honors.asc(@view_by).asc(:paper_title)
|
||||||
|
end
|
||||||
|
@honors = @honors.page(page).per(50)
|
||||||
|
respond_to do |format|
|
||||||
|
format.html { render :layout => false}
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def new
|
||||||
|
@honor = Honor.new
|
||||||
|
render :layout => false
|
||||||
|
end
|
||||||
|
|
||||||
|
def create
|
||||||
|
params[:honor][:create_user_id] = current_user.id
|
||||||
|
@honor = Honor.new(params[:honor])
|
||||||
|
if @honor.save
|
||||||
|
render json: {success: true, msg: t('create_success')}.to_json
|
||||||
|
else
|
||||||
|
error_msg = @honor.errors.full_messages.join("<br />")
|
||||||
|
render json: {success: false, msg: error_msg}.to_json
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def edit
|
||||||
|
@honor = Honor.find(params[:id])
|
||||||
|
render :layout => false
|
||||||
|
end
|
||||||
|
|
||||||
|
def update
|
||||||
|
params[:honor][:create_user_id] = current_user.id
|
||||||
|
@honor = Honor.new(params[:honor])
|
||||||
|
if @honor.update_attributes(params[:honor])
|
||||||
|
render json: {success: true, msg: t('create_success')}.to_json
|
||||||
|
else
|
||||||
|
error_msg = @honor.errors.full_messages.join("<br />")
|
||||||
|
render json: {success: false, msg: error_msg}.to_json
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def destroy
|
||||||
|
@honor = Honor.find(params[:id])
|
||||||
|
@honor.destroy
|
||||||
|
render :json => {success: true, msg: t('delete_success')}
|
||||||
|
end
|
||||||
|
|
||||||
|
def honors_window
|
||||||
|
render :layout => false
|
||||||
|
end
|
||||||
|
end
|
|
@ -0,0 +1,87 @@
|
||||||
|
module Panel::PersonalHonor::Desktop::PersonalHonorsHelper
|
||||||
|
def publication_record publication, view
|
||||||
|
content_tag :li,
|
||||||
|
"item" => "true",
|
||||||
|
:class => "list_t_item" do
|
||||||
|
marker + \
|
||||||
|
content(publication, view) + \
|
||||||
|
edit_or_delete(publication)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def marker
|
||||||
|
content_tag :div,
|
||||||
|
:class => "list_item_action" do
|
||||||
|
content_tag(:a, "",:href=>"",
|
||||||
|
:class => "icon-check-empty",
|
||||||
|
"toggle-onclick"=>"icon-check-empty icon-check",
|
||||||
|
"ajax-remote"=>"false") + \
|
||||||
|
content_tag(:a, "",:href=>"",
|
||||||
|
:class => "icon-star-empty",
|
||||||
|
"toggle-onclick"=>"icon-star-empty icon-star",
|
||||||
|
"ajax-remote"=>"false")
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def content publication, view
|
||||||
|
case view
|
||||||
|
when "award_name"
|
||||||
|
des = content_tag(:div, publication.award_name,
|
||||||
|
:class => "list_t_des")
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
content_tag(:div, publication.award_name,
|
||||||
|
:class => "list_t_title") + des
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
def edit_or_delete publication
|
||||||
|
content_tag :div,
|
||||||
|
:class => "list_item_function" do
|
||||||
|
content_tag(:a, t("edit"),
|
||||||
|
:class => "journal_paper_edit admbg2 admtxt",
|
||||||
|
:href => edit_panel_personal_honor_desktop_personal_honor_path(publication),
|
||||||
|
"callback-method" => "edithonor",
|
||||||
|
"ajax-remote" => "get") + \
|
||||||
|
content_tag(:a, t(:delete_),
|
||||||
|
"ajax-remote" => "delete",
|
||||||
|
"confirm-message" => t("sure?"),
|
||||||
|
"callback-method" => "honorDelete",
|
||||||
|
:class => "journal_paper_delete admbg2 admtxt",
|
||||||
|
:href => panel_personal_honor_desktop_personal_honor_path(publication))
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def link_publication_file publication
|
||||||
|
publication.writing_book_files.map{|file|
|
||||||
|
link_to(image_tag(check_file_type(file.file.url)) + \
|
||||||
|
content_tag(:span, file.title, :class => "filetitle"),
|
||||||
|
file.file.url,
|
||||||
|
:class => "file",
|
||||||
|
"target" => "_blank")
|
||||||
|
}.inject(:+)
|
||||||
|
end
|
||||||
|
|
||||||
|
def check_file_type file
|
||||||
|
if not file.nil?
|
||||||
|
file_type = MIME::Types.type_for(file).first.to_s.split("/")[1]
|
||||||
|
file_type = "/assets/ft-icons/#{file_type}/#{file_type}-48_32.png"
|
||||||
|
else
|
||||||
|
file_type = ""
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def generate_authors_name ids
|
||||||
|
author_name = ids.map{|m|
|
||||||
|
if m == "0"
|
||||||
|
#{:id => 0, :text => current_user.name, :email => current_user.email }
|
||||||
|
{:id => 0, :text => current_user.name }
|
||||||
|
else
|
||||||
|
#{:id => m, :text => ConferenceCoAuthor.find(m).co_author, :email => ConferenceCoAuthor.find(m).email}
|
||||||
|
{:id => m, :text => ConferenceCoAuthor.find(m).co_author}
|
||||||
|
end
|
||||||
|
}
|
||||||
|
author_name.to_json
|
||||||
|
end
|
||||||
|
end
|
|
@ -0,0 +1,66 @@
|
||||||
|
<div class="toolbar hh1">
|
||||||
|
<div class="fn_g hp">
|
||||||
|
|
||||||
|
<%= f.submit t("save"), name: "commit", class: "fn_btn ini_input hp hh1 thmc2 thmtxt" %>
|
||||||
|
<% if not @honor.new_record? %>
|
||||||
|
<%= submit_tag t("cancel"), :type => "button", "callback-method"=>"cancelhonor", "ajax-remote" => "get", :href => panel_personal_honor_desktop_personal_honors_path, class: "fn_btn ini_input hp hh1 admbg2 admtxt" %>
|
||||||
|
|
||||||
|
<% end %>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1">Share</div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Full</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Abstract</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Friends</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Private</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Group</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1"><span class="icon-question-sign"></span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="overview" content-layout="column" base-width="420">
|
||||||
|
<div column="true">
|
||||||
|
<div class="s_form">
|
||||||
|
<ul>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= label_tag("", t("personal_honor.award_name"), class: "s_grid_4 s_grid") %><%= f.text_field :award_name, size: "20", class: "s_grid_8 s_grid"%>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= label_tag("", t("personal_honor.awarding_unit"), class: "s_grid_4 s_grid") %><%= f.text_field :awarding_unit, size: "20", class: "s_grid_8 s_grid"%>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= label_tag("", t("personal_honor.year"), class: "s_grid_4 s_grid") %>
|
||||||
|
<%= select_year((@honor.year ? @honor.year.to_i : DateTime.now.year), {:start_year => DateTime.now.year, :end_year => 1930}, {:name => 'honor[year]',:class => 's_grid_4 s_grid'} ) %>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= label_tag("", t("personal_honor.honor_category"), class: "s_grid_4 s_grid") %>
|
||||||
|
<%= f.select :honor_category_id, HonorCategory.all.collect {|t| [ t.title, t.id ]}, {:class => "s_grid s_grid_4"} %>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= label_tag("", t("personal_honor.url"), class: "s_grid_4 s_grid") %><%= f.text_field :url, size: "20", class: "s_grid_8 s_grid"%>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= f.text_area :keywords, size: "20x3", placeholder: t("personal_honor.keywords"), class: "s_grid_12 s_grid_h_2 s_grid"%>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= f.label :language, t("personal_honor.language"), :class => "s_grid s_grid_4" %>
|
||||||
|
<%= f.select :language, Honor::LANGUAGE_TYPES,{} ,{:class => "s_grid s_grid_8"} %>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div column="true">
|
||||||
|
<div class="s_form">
|
||||||
|
<ul>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= f.text_area :note, size: "20x3", placeholder: t("personal_honor.note"), class: "s_grid_12 s_grid s_grid_h_5"%>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
|
@ -0,0 +1,3 @@
|
||||||
|
<%= form_for @honor, html: { multipart: true, "form-type"=>"ajax_form", "callback-method"=>"formCallback"}, url: panel_personal_honor_desktop_personal_honors_path(@personal_book) do |f| %>
|
||||||
|
<%= render partial: 'form', locals: {:f => f} %>
|
||||||
|
<%end%>
|
|
@ -0,0 +1,35 @@
|
||||||
|
<%= stylesheet_link_tag "/assets/personal_honor/desktop/personal_honor" %>
|
||||||
|
<%= javascript_include_tag "personal_honor/desktop/personal_honors" %>
|
||||||
|
<div id="honors">
|
||||||
|
<div id="content">
|
||||||
|
<div id="header" class="hh2">
|
||||||
|
<div class="dtitle w2 hh2 hp">
|
||||||
|
<span class="thmtxth">Honors</span>
|
||||||
|
</div>
|
||||||
|
<div id="search_app" class="hfn w2 hh1 hp thmc3">
|
||||||
|
<input type="text" class="ini_input form" value="Search" id="searchbox" />
|
||||||
|
<input type="submit" class="ini_input submit thmc1" value="Submit"/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id="holder">
|
||||||
|
<div id="panel_l" class="ph">
|
||||||
|
<div class="s_menu sm_v" content-type="menu">
|
||||||
|
<ul id='setting_left_nav'>
|
||||||
|
<li><a href="<%= panel_personal_honor_desktop_personal_honors_path %>" callback-method="list" class="hh1 w2 hp active thmc1 thmtxt" load="true" onclick='return false;'>List</a></li>
|
||||||
|
<li><a href="<%= new_panel_personal_honor_desktop_personal_honor_path %>" callback-method="addhonor" class="admtxt hh1 w2 hp" onclick='return false;'>Add/Edit</a></li>
|
||||||
|
<!-- <li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Books</a></li>
|
||||||
|
<li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Co-Authors</a></li>
|
||||||
|
<li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Tags & Keywords</a></li>
|
||||||
|
<li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Analysis</a></li>
|
||||||
|
<li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Import</a></li>
|
||||||
|
<li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Export</a></li> -->
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id="panel_r" container="true" class="ph pw admbg hp">
|
||||||
|
</div>
|
||||||
|
<div class="clear"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
|
@ -0,0 +1,84 @@
|
||||||
|
<div class="toolbar hh1">
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1"><span class="icon-check"></span></div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul id="journal_selection_options">
|
||||||
|
<li><a class="hp hh1 admtxt" href="all" ajax-remote="false" callback-method="allnone">All</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="none" ajax-remote="false" callback-method="allnone">None</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1">More</div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Delete</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Tag</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1">Tag</div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">All</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Starred</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">MIT</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1">Status</div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">All</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Published</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Pending</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1">View</div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul id="journal_view_selection">
|
||||||
|
<li><%= link_to "Journal", panel_personal_honor_desktop_personal_honors_path + "?view=book_title", :class => "hp hh1 admtxt", "ajax-remote" => "get" %></li>
|
||||||
|
<li><%= link_to "Title", panel_personal_honor_desktop_personal_honors_path + "?view=paper_title", :class => "hp hh1 admtxt", "ajax-remote" => "get" %></li>
|
||||||
|
<li><%= link_to "File", panel_personal_honor_desktop_personal_honors_path + "?view=file", :class => "hp hh1 admtxt", "ajax-remote" => "get" %></li>
|
||||||
|
<li><%= link_to "Keywords", panel_personal_honor_desktop_personal_honors_path + "?view=keywords", :class => "hp hh1 admtxt", "ajax-remote" => "get" %></li>
|
||||||
|
<li><%= link_to "Abstract", panel_personal_honor_desktop_personal_honors_path + "?view=abstract", :class => "hp hh1 admtxt", "ajax-remote" => "get" %></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1">Share</div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Full</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Abstract</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Friends</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Private</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Group</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1" id='ns'>New Share</div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul>
|
||||||
|
<li><a class="hp hh1 admtxt remote_url" href="<%= panel_personal_honor_desktop_personal_honors_path %>">Full</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Abstract</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Friends</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Private</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Group</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1"><span class="icon-question-sign"></span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="overview" page-name="journal_p_list" content-layout="datalist" base-width="300" per-column="<%= @per_column.to_s %>" pagination-var="view=<%= @view_by %>&page" >
|
||||||
|
<% @honors.each do |w| %>
|
||||||
|
<%= publication_record w, @view_by%>
|
||||||
|
<% end %>
|
||||||
|
</div>
|
|
@ -0,0 +1,3 @@
|
||||||
|
<%= form_for @honor, html: { multipart: true, "form-type"=>"ajax_form", "callback-method"=>"formCallback"}, url: panel_personal_honor_desktop_personal_honors_path do |f| %>
|
||||||
|
<%= render partial: 'form', locals: {:f => f} %>
|
||||||
|
<%end%>
|
|
@ -1,4 +1,54 @@
|
||||||
en:
|
en:
|
||||||
|
|
||||||
module_name:
|
module_name:
|
||||||
personal_honor: Honor
|
personal_honor: Book
|
||||||
|
personal_honor:
|
||||||
|
paper_title : "Paper Title"
|
||||||
|
book_title : "Book Title"
|
||||||
|
award_name : "Award Name"
|
||||||
|
awarding_unit : "Awarding Unit"
|
||||||
|
honor_category : "Honor Category"
|
||||||
|
extracted_chapters : "Extracted Chapters"
|
||||||
|
publishers : "Publishers"
|
||||||
|
authors : "Authors"
|
||||||
|
tags : "Tags"
|
||||||
|
year : "Year"
|
||||||
|
language : "Language"
|
||||||
|
isbn : "ISSN(ISBN)"
|
||||||
|
vol_no : "Vol.No"
|
||||||
|
issue_no : "Issue.No"
|
||||||
|
form_to_start : "From"
|
||||||
|
form_to_end : "To"
|
||||||
|
total_pages : "Total Pages"
|
||||||
|
keywords : "Keywords"
|
||||||
|
abstract : "Abstract"
|
||||||
|
publication_date : "Date of Publication"
|
||||||
|
url : "Reference URL"
|
||||||
|
note : "Note"
|
||||||
|
level_type : "Level Type"
|
||||||
|
author_type : "Author Type"
|
||||||
|
from : "From"
|
||||||
|
to : "To"
|
||||||
|
file : "File"
|
||||||
|
file_name : "File name"
|
||||||
|
description : "File Description"
|
||||||
|
pages : "Pages"
|
||||||
|
book_paper_type : "Book Paper Type"
|
||||||
|
|
||||||
|
create_success : "Successfully Create"
|
||||||
|
update_success : "Successfully Update"
|
||||||
|
delete_success : "Successfully Delete"
|
||||||
|
add: "Add"
|
||||||
|
back: "Back"
|
||||||
|
delete: "Delete"
|
||||||
|
edit: "Edit"
|
||||||
|
nothing: "Nothing"
|
||||||
|
show: "Show"
|
||||||
|
sure?: "Are you sure?"
|
||||||
|
update: "Update"
|
||||||
|
yes_: "Yes"
|
||||||
|
no_: "No"
|
||||||
|
cancel : "Cancel"
|
||||||
|
save: "save"
|
||||||
|
hintText: "Type in a search term"
|
||||||
|
noResultsText: "No results"
|
||||||
|
searchingText: "Searching…"
|
||||||
|
|
|
@ -1,4 +1,54 @@
|
||||||
zh_tw:
|
zh_tw:
|
||||||
|
|
||||||
module_name:
|
module_name:
|
||||||
personal_honor: 榮譽
|
personal_honor: 期刊著作
|
||||||
|
personal_honor:
|
||||||
|
paper_title : "論文名稱"
|
||||||
|
book_title : "期刊名稱"
|
||||||
|
award_name : "Award Name"
|
||||||
|
awarding_unit : "Awarding Unit"
|
||||||
|
honor_category : "Honor Category"
|
||||||
|
extracted_chapters : "Extracted Chapters"
|
||||||
|
publishers : "Publishers"
|
||||||
|
authors : "作者"
|
||||||
|
tags : "領域"
|
||||||
|
year : "年度"
|
||||||
|
language : "語言"
|
||||||
|
isbn : "ISSN(ISBN)"
|
||||||
|
vol_no : "卷數"
|
||||||
|
issue_no : "期數"
|
||||||
|
form_to_start : "起"
|
||||||
|
form_to_end : "訖"
|
||||||
|
total_pages : "總頁數"
|
||||||
|
keywords : "關鍵字"
|
||||||
|
abstract : "摘要"
|
||||||
|
publication_date : "發表日期"
|
||||||
|
url : "參考連結"
|
||||||
|
note : "記事"
|
||||||
|
level_type : "期刊類別"
|
||||||
|
author_type : "作者類別"
|
||||||
|
from : "起"
|
||||||
|
to : "訖"
|
||||||
|
file : "檔案"
|
||||||
|
file_name : "檔案名稱"
|
||||||
|
description : "描述"
|
||||||
|
pages : "Pages"
|
||||||
|
book_paper_type : "Book Paper Type"
|
||||||
|
|
||||||
|
create_success : "新增完成!!"
|
||||||
|
update_success : "更新完成!!"
|
||||||
|
delete_success : "刪除成功!!"
|
||||||
|
add: "新增"
|
||||||
|
back: "返回"
|
||||||
|
delete: "刪除"
|
||||||
|
edit: "編輯"
|
||||||
|
nothing: "無"
|
||||||
|
show: "顯示"
|
||||||
|
sure?: "您肯定嗎?"
|
||||||
|
update: "更新"
|
||||||
|
yes_: "是"
|
||||||
|
no_: "否"
|
||||||
|
cancel : "取消"
|
||||||
|
save: "儲存"
|
||||||
|
hintText: "請輸入搜尋關鍵字"
|
||||||
|
noResultsText: "沒有相關的比對結果"
|
||||||
|
searchingText: "搜尋中…"
|
||||||
|
|
|
@ -2,6 +2,11 @@ Rails.application.routes.draw do
|
||||||
|
|
||||||
namespace :panel do
|
namespace :panel do
|
||||||
namespace :personal_honor do
|
namespace :personal_honor do
|
||||||
|
namespace :desktop do
|
||||||
|
match "honor_window" => "personal_honors#honors_window"
|
||||||
|
resources :personal_honors
|
||||||
|
end
|
||||||
|
|
||||||
namespace :back_end do
|
namespace :back_end do
|
||||||
|
|
||||||
match 'honor_setting' => "honors#honor_setting" ,:as => :honor_setting
|
match 'honor_setting' => "honors#honor_setting" ,:as => :honor_setting
|
||||||
|
|
158
vendor/built_in_modules/personal_lab/app/assets/javascripts/personal_lab/desktop/personal_lab.js
vendored
Normal file
158
vendor/built_in_modules/personal_lab/app/assets/javascripts/personal_lab/desktop/personal_lab.js
vendored
Normal file
|
@ -0,0 +1,158 @@
|
||||||
|
orbitDesktop.prototype.initializePersonalLab = function(target,url,cache){ // this init journal papers
|
||||||
|
this.initializePersonalLab.formCallback = function(data){
|
||||||
|
if(data.success){
|
||||||
|
o.notify(data.msg,"success");
|
||||||
|
o.sub_menu_item($("div[content-type=menu] a").eq(0));
|
||||||
|
}else{
|
||||||
|
o.notify(data.msg,"alert");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
this.initializePersonalLab.list = function(){ // to open list part in journal papers page
|
||||||
|
var journalData;
|
||||||
|
var bindHandlers = function(){ // to bind handlers for list page
|
||||||
|
|
||||||
|
}
|
||||||
|
bindHandlers();
|
||||||
|
|
||||||
|
var bindSecondaryHandlers = function(){
|
||||||
|
$("#journal_p div#paper_list a.icon-check-empty").click(function(){
|
||||||
|
if($(this).hasClass("icon-check-empty")){
|
||||||
|
$(this).switchClass("icon-check-empty","icon-check",0);
|
||||||
|
} else if($(this) .hasClass("icon-check")) {
|
||||||
|
$(this).switchClass("icon-check","icon-check-empty",0);
|
||||||
|
} else if($(this).hasClass("icon-star")){
|
||||||
|
$(this).removeClass("icon-star").addClass("icon-star-empty");
|
||||||
|
} else if($(this).hasClass("icon-star-empty")){
|
||||||
|
$(this).removeClass("icon-star-empty").addClass("icon-star");
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.initializePersonalLab.labDelete = function(data,dom){
|
||||||
|
var parent = dom.parent().parent();
|
||||||
|
if(data.success){
|
||||||
|
parent.hide("slide",function(){parent.remove();});
|
||||||
|
o.notify(data.msg,"success");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
this.initializePersonalLab.cancellab = function(){
|
||||||
|
o.highlight_sub_menu_item(0);
|
||||||
|
}
|
||||||
|
|
||||||
|
this.initializePersonalLab.editlab = function(){
|
||||||
|
o.highlight_sub_menu_item(1);
|
||||||
|
var uploadFiles = function(){
|
||||||
|
$('#add_plugin_file a.add').click(function(){
|
||||||
|
var new_id = $(this).prev().attr('value');
|
||||||
|
var old_id = new RegExp("new_writing_journal_files", "g");
|
||||||
|
$(this).prev().attr('value', parseInt(new_id) + 1);
|
||||||
|
var x = get_html(old_id,new_id);
|
||||||
|
var newfield = $(x);
|
||||||
|
$(this).parents('table').append(newfield);
|
||||||
|
newfield.find('.action a.delete').click(function(){
|
||||||
|
newfield.remove();
|
||||||
|
});
|
||||||
|
return false;
|
||||||
|
});
|
||||||
|
$('.action a.remove_existing_record').click(function(){
|
||||||
|
$(this).next('.should_destroy').attr('value', 1);
|
||||||
|
$("tr#add_plugin_file_" + $(this).prev().attr('value')).hide();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
var preData = function(){
|
||||||
|
$("#writing_journal_author_tokens").select2('data', JSON.parse($("#writing_journal_author_tokens").attr('data-pre')));
|
||||||
|
}
|
||||||
|
uploadFiles();
|
||||||
|
// preData();
|
||||||
|
}
|
||||||
|
|
||||||
|
this.initializePersonalLab.addlab = function(){ // to open add pages in journal papers page
|
||||||
|
var uploadFiles = function(){
|
||||||
|
$('#add_plugin_file a.add').click(function(){
|
||||||
|
var new_id = $(this).prev().attr('value');
|
||||||
|
var old_id = new RegExp("new_writing_journal_files", "g");
|
||||||
|
$(this).prev().attr('value', parseInt(new_id) + 1);
|
||||||
|
var x = get_html(old_id,new_id);
|
||||||
|
var newfield = $(x);
|
||||||
|
$(this).parents('table').append(newfield);
|
||||||
|
newfield.find('.action a.delete').click(function(){
|
||||||
|
newfield.remove();
|
||||||
|
});
|
||||||
|
return false;
|
||||||
|
});
|
||||||
|
$('.action a.remove_existing_record').click(function(){
|
||||||
|
$(this).next('.should_destroy').attr('value', 1);
|
||||||
|
$("tr#add_plugin_file_" + $(this).prev().attr('value')).hide();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
// console.log("hi");
|
||||||
|
var bindHandlers = function(){
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
bindHandlers();
|
||||||
|
uploadFiles();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
this.initializePersonalLab.coAuthorformCallback = function(data){
|
||||||
|
if(data.success){
|
||||||
|
o.notify(data.msg,"success");
|
||||||
|
o.sub_menu_item($("div[content-type=menu] a").eq(3));
|
||||||
|
}else{
|
||||||
|
o.notify(data.msg,"alert");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.initializePersonalLab.coauthor = function(){ // to open add pages in coauthor page
|
||||||
|
var bindHandlers = function(){ // to bind handlers for add page
|
||||||
|
|
||||||
|
}
|
||||||
|
bindHandlers();
|
||||||
|
}
|
||||||
|
this.initializePersonalLab.coauthorRelationForm = function(data){
|
||||||
|
if(data.success){
|
||||||
|
o.notify(data.msg,"success");
|
||||||
|
$("#co_author_relation_table").html(data.newvalue);
|
||||||
|
}else{
|
||||||
|
o.notify(data.msg,"alert");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.initializePersonalLab.coauthorRelationEditForm = function(data){
|
||||||
|
if(data.success){
|
||||||
|
o.notify(data.msg,"success");
|
||||||
|
var x = o.layout_data.generate_layout_html(data.newvalue);
|
||||||
|
$("div[container=true] div.overview").html(x.markup);
|
||||||
|
}else{
|
||||||
|
o.notify(data.msg,"alert");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.initializePersonalLab.allnone = function(d,o){
|
||||||
|
switch(o.attr("href")){
|
||||||
|
case "all":
|
||||||
|
$("div.overview a.icon-check-empty").removeClass("icon-check-empty").addClass("icon-check");
|
||||||
|
break;
|
||||||
|
case "none":
|
||||||
|
$("div.overview a.icon-check").removeClass("icon-check").addClass("icon-check-empty");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.initializePersonalLab.allnone = function(d,o){
|
||||||
|
switch(o.attr("href")){
|
||||||
|
case "all":
|
||||||
|
$("div.overview a.icon-check-empty").removeClass("icon-check-empty").addClass("icon-check");
|
||||||
|
break;
|
||||||
|
case "none":
|
||||||
|
$("div.overview a.icon-check").removeClass("icon-check").addClass("icon-check-empty");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
|
115
vendor/built_in_modules/personal_lab/app/assets/stylesheets/personal_lab/desktop/personal_lab.css
vendored
Normal file
115
vendor/built_in_modules/personal_lab/app/assets/stylesheets/personal_lab/desktop/personal_lab.css
vendored
Normal file
|
@ -0,0 +1,115 @@
|
||||||
|
/* Books */
|
||||||
|
[page-name="books_list"] .list_t_item .inner {
|
||||||
|
padding-left: 30px; }
|
||||||
|
[page-name="books_list"] .list_item_action {
|
||||||
|
font-size: 12px;
|
||||||
|
float: left;
|
||||||
|
margin-left: -30px; }
|
||||||
|
[page-name="books_list"] .list_item_action a {
|
||||||
|
display: block;
|
||||||
|
width: 20px;
|
||||||
|
height: 20px;
|
||||||
|
line-height: 20px;
|
||||||
|
margin: 1px 1px 6px 1px; }
|
||||||
|
[page-name="books_list"] .list_item_action .icon-star-empty {
|
||||||
|
color: #999;
|
||||||
|
font-size: 20px; }
|
||||||
|
[page-name="books_list"] .list_item_action .icon-star {
|
||||||
|
color: #faa732;
|
||||||
|
font-size: 20px; }
|
||||||
|
[page-name="books_list"] .list_item_action .icon-check-empty {
|
||||||
|
color: #999;
|
||||||
|
font-size: 20px; }
|
||||||
|
[page-name="books_list"] .list_item_action .icon-check {
|
||||||
|
color: #333;
|
||||||
|
font-size: 20px; }
|
||||||
|
[page-name="books_list"] .file_view .list_t_des {
|
||||||
|
overflow: hidden; }
|
||||||
|
[page-name="books_list"] .file_view .file {
|
||||||
|
float: left;
|
||||||
|
width: 120px;
|
||||||
|
height: 50px;
|
||||||
|
padding: 6px;
|
||||||
|
margin: 1px;
|
||||||
|
position: relative;
|
||||||
|
-webkit-box-sizing: border-box;
|
||||||
|
/* webkit */
|
||||||
|
-khtml-box-sizing: border-box;
|
||||||
|
/* konqueror */
|
||||||
|
-moz-box-sizing: border-box;
|
||||||
|
/* firefox */
|
||||||
|
-ms-box-sizing: border-box;
|
||||||
|
/* ie */
|
||||||
|
box-sizing: border-box;
|
||||||
|
/* css3 */ }
|
||||||
|
[page-name="books_list"] .file_view .file:hover {
|
||||||
|
background-color: #f7f7f7; }
|
||||||
|
[page-name="books_list"] .file_view .file img {
|
||||||
|
width: 38px;
|
||||||
|
height: 38px;
|
||||||
|
position: absolute;
|
||||||
|
left: 6px;
|
||||||
|
top: 6px; }
|
||||||
|
[page-name="books_list"] .file_view .file .filetitle {
|
||||||
|
display: block;
|
||||||
|
width: 100%;
|
||||||
|
height: 38px;
|
||||||
|
padding-left: 40px;
|
||||||
|
overflow: hidden;
|
||||||
|
-webkit-box-sizing: border-box;
|
||||||
|
/* webkit */
|
||||||
|
-khtml-box-sizing: border-box;
|
||||||
|
/* konqueror */
|
||||||
|
-moz-box-sizing: border-box;
|
||||||
|
/* firefox */
|
||||||
|
-ms-box-sizing: border-box;
|
||||||
|
/* ie */
|
||||||
|
box-sizing: border-box;
|
||||||
|
/* css3 */ }
|
||||||
|
|
||||||
|
/* Books Books list */
|
||||||
|
[page-name="books_books"] .datalist_item .inner {
|
||||||
|
padding-left: 30px; }
|
||||||
|
[page-name="books_books"] .list_item_action {
|
||||||
|
font-size: 12px;
|
||||||
|
float: left;
|
||||||
|
margin-left: -30px; }
|
||||||
|
[page-name="books_books"] .list_item_action i {
|
||||||
|
color: #999;
|
||||||
|
font-size: 20px;
|
||||||
|
display: block;
|
||||||
|
width: 20px;
|
||||||
|
height: 20px;
|
||||||
|
line-height: 20px;
|
||||||
|
margin: 1px 1px 6px 1px; }
|
||||||
|
[page-name="books_books"] .list_t_desc {
|
||||||
|
font-family: Arial, sans-serif;
|
||||||
|
font-size: 12px;
|
||||||
|
color: #999; }
|
||||||
|
|
||||||
|
/* Books Co-Author */
|
||||||
|
[page-name="books_coauthor"] .list_t_item {
|
||||||
|
height: 110px; }
|
||||||
|
[page-name="books_coauthor"] .list_item_function a {
|
||||||
|
display: inline-block;
|
||||||
|
padding: 4px;
|
||||||
|
font-family: Arial, sans-serif;
|
||||||
|
font-size: 11px;
|
||||||
|
-webkit-text-size-adjust: none; }
|
||||||
|
[page-name="books_coauthor"] .info {
|
||||||
|
font-family: Arial, sans-serif; }
|
||||||
|
[page-name="books_coauthor"] .info li {
|
||||||
|
margin-bottom: 8px;
|
||||||
|
color: #999; }
|
||||||
|
[page-name="books_coauthor"] .info .name {
|
||||||
|
font-size: 18px;
|
||||||
|
line-height: 24px;
|
||||||
|
color: #333; }
|
||||||
|
|
||||||
|
/* Books Co-Author Relationship*/
|
||||||
|
[page-name="books_coauthor_relation"] .edit_co_author_relation {
|
||||||
|
/*margin-left: -10px;*/ }
|
||||||
|
[page-name="books_coauthor_relation"] .form_space {
|
||||||
|
margin-bottom: 10px;
|
||||||
|
font-size: 18px;
|
||||||
|
font-family: Arial, sans-serif; }
|
123
vendor/built_in_modules/personal_lab/app/assets/stylesheets/personal_lab/desktop/personal_lab.scss
vendored
Normal file
123
vendor/built_in_modules/personal_lab/app/assets/stylesheets/personal_lab/desktop/personal_lab.scss
vendored
Normal file
|
@ -0,0 +1,123 @@
|
||||||
|
@import "desktop-helper";
|
||||||
|
|
||||||
|
/* Books */
|
||||||
|
[page-name="books_list"] {
|
||||||
|
.list_t_item .inner { padding-left: 30px; }
|
||||||
|
.list_item_action {
|
||||||
|
font-size: 12px;
|
||||||
|
float: left;
|
||||||
|
margin-left: -30px;
|
||||||
|
|
||||||
|
a {
|
||||||
|
display: block;
|
||||||
|
width: 20px;
|
||||||
|
height: 20px;
|
||||||
|
line-height: 20px;
|
||||||
|
margin: 1px 1px 6px 1px;
|
||||||
|
}
|
||||||
|
.icon-star-empty { color: #999; font-size: 20px; }
|
||||||
|
.icon-star { color: #faa732; font-size: 20px; }
|
||||||
|
.icon-check-empty { color: #999; font-size: 20px; }
|
||||||
|
.icon-check { color: #333; font-size: 20px; }
|
||||||
|
}
|
||||||
|
|
||||||
|
.file_view {
|
||||||
|
.list_t_des {
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
.file {
|
||||||
|
float: left;
|
||||||
|
width: 120px;
|
||||||
|
height: 50px;
|
||||||
|
padding: 6px;
|
||||||
|
margin: 1px;
|
||||||
|
position: relative;
|
||||||
|
@include box-sizing;
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
background-color: lighten($gray, 10%);
|
||||||
|
}
|
||||||
|
img {
|
||||||
|
width: 38px;
|
||||||
|
height: 38px;
|
||||||
|
position: absolute;
|
||||||
|
left: 6px;
|
||||||
|
top: 6px;
|
||||||
|
}
|
||||||
|
.filetitle {
|
||||||
|
display: block;
|
||||||
|
width: 100%;
|
||||||
|
height: 38px;
|
||||||
|
padding-left: 40px;
|
||||||
|
overflow: hidden;
|
||||||
|
@include box-sizing;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Books Books list */
|
||||||
|
[page-name="books_books"] {
|
||||||
|
|
||||||
|
.datalist_item .inner {
|
||||||
|
padding-left: 30px;
|
||||||
|
}
|
||||||
|
.list_item_action {
|
||||||
|
font-size: 12px;
|
||||||
|
float: left;
|
||||||
|
margin-left: -30px;
|
||||||
|
}
|
||||||
|
.list_item_action i {
|
||||||
|
color: #999;
|
||||||
|
font-size: 20px;
|
||||||
|
display: block;
|
||||||
|
width: 20px;
|
||||||
|
height: 20px;
|
||||||
|
line-height: 20px;
|
||||||
|
margin: 1px 1px 6px 1px;
|
||||||
|
}
|
||||||
|
.list_t_desc {
|
||||||
|
font-family: Arial, sans-serif;
|
||||||
|
font-size: 12px;
|
||||||
|
color: #999;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Books Co-Author */
|
||||||
|
[page-name="books_coauthor"] {
|
||||||
|
.list_t_item {
|
||||||
|
height: 110px;
|
||||||
|
}
|
||||||
|
.list_item_function {}
|
||||||
|
.list_item_function a {
|
||||||
|
display: inline-block;
|
||||||
|
padding: 4px;
|
||||||
|
font-family: Arial, sans-serif;
|
||||||
|
font-size: 11px;
|
||||||
|
-webkit-text-size-adjust: none;
|
||||||
|
}
|
||||||
|
.info {
|
||||||
|
font-family: Arial, sans-serif;
|
||||||
|
}
|
||||||
|
.info li {
|
||||||
|
margin-bottom: 8px;
|
||||||
|
color: #999;
|
||||||
|
}
|
||||||
|
.info .name {
|
||||||
|
font-size: 18px;
|
||||||
|
line-height: 24px;
|
||||||
|
color: #333;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Books Co-Author Relationship*/
|
||||||
|
[page-name="books_coauthor_relation"]{
|
||||||
|
.edit_co_author_relation {
|
||||||
|
/*margin-left: -10px;*/
|
||||||
|
}
|
||||||
|
.form_space {
|
||||||
|
margin-bottom: 10px;
|
||||||
|
font-size: 18px;
|
||||||
|
font-family: Arial, sans-serif;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,71 @@
|
||||||
|
class Panel::PersonalLab::Desktop::PersonalLabsController < ApplicationController
|
||||||
|
|
||||||
|
def index
|
||||||
|
@labs = Lab.where(create_user_id: current_user.id)
|
||||||
|
@view_by = params[:view]
|
||||||
|
page = params[:page]
|
||||||
|
page ||= 1
|
||||||
|
|
||||||
|
@per_column = 5
|
||||||
|
|
||||||
|
case @view_by
|
||||||
|
when "abstract"
|
||||||
|
@per_column = 1
|
||||||
|
when "file"
|
||||||
|
@per_column = 2
|
||||||
|
end
|
||||||
|
|
||||||
|
if @view_by.nil?
|
||||||
|
@view_by = " "
|
||||||
|
@labs = @labs.asc(:paper_title)
|
||||||
|
else
|
||||||
|
@labs = @labs.asc(@view_by).asc(:paper_title)
|
||||||
|
end
|
||||||
|
@labs = @labs.page(page).per(50)
|
||||||
|
respond_to do |format|
|
||||||
|
format.html { render :layout => false}
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def new
|
||||||
|
@lab = Lab.new
|
||||||
|
render :layout => false
|
||||||
|
end
|
||||||
|
|
||||||
|
def create
|
||||||
|
params[:lab][:create_user_id] = current_user.id
|
||||||
|
@lab = Lab.new(params[:lab])
|
||||||
|
if @lab.save
|
||||||
|
render json: {success: true, msg: t('create_success')}.to_json
|
||||||
|
else
|
||||||
|
error_msg = @lab.errors.full_messages.join("<br />")
|
||||||
|
render json: {success: false, msg: error_msg}.to_json
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def edit
|
||||||
|
@lab = Lab.find(params[:id])
|
||||||
|
render :layout => false
|
||||||
|
end
|
||||||
|
|
||||||
|
def update
|
||||||
|
params[:lab][:create_user_id] = current_user.id
|
||||||
|
@lab = Lab.new(params[:lab])
|
||||||
|
if @lab.update_attributes(params[:lab])
|
||||||
|
render json: {success: true, msg: t('create_success')}.to_json
|
||||||
|
else
|
||||||
|
error_msg = @lab.errors.full_messages.join("<br />")
|
||||||
|
render json: {success: false, msg: error_msg}.to_json
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def destroy
|
||||||
|
@lab = Lab.find(params[:id])
|
||||||
|
@lab.destroy
|
||||||
|
render :json => {success: true, msg: t('delete_success')}
|
||||||
|
end
|
||||||
|
|
||||||
|
def lab_window
|
||||||
|
render :layout => false
|
||||||
|
end
|
||||||
|
end
|
|
@ -0,0 +1,96 @@
|
||||||
|
module Panel::PersonalLab::Desktop::PersonalLabsHelper
|
||||||
|
def publication_record publication, view
|
||||||
|
content_tag :li,
|
||||||
|
"item" => "true",
|
||||||
|
:class => "list_t_item" do
|
||||||
|
marker + \
|
||||||
|
content(publication, view) + \
|
||||||
|
edit_or_delete(publication)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def marker
|
||||||
|
content_tag :div,
|
||||||
|
:class => "list_item_action" do
|
||||||
|
content_tag(:a, "",:href=>"",
|
||||||
|
:class => "icon-check-empty",
|
||||||
|
"toggle-onclick"=>"icon-check-empty icon-check",
|
||||||
|
"ajax-remote"=>"false") + \
|
||||||
|
content_tag(:a, "",:href=>"",
|
||||||
|
:class => "icon-star-empty",
|
||||||
|
"toggle-onclick"=>"icon-star-empty icon-star",
|
||||||
|
"ajax-remote"=>"false")
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def content publication, view
|
||||||
|
case view
|
||||||
|
when "lab_title"
|
||||||
|
des = content_tag(:div, publication.lab_title,
|
||||||
|
:class => "list_t_des")
|
||||||
|
when "keywords"
|
||||||
|
des = content_tag(:div, publication.keywords,
|
||||||
|
:class => "list_t_des")
|
||||||
|
when "location"
|
||||||
|
des = content_tag(:div, publication.location,
|
||||||
|
:class => "list_t_des")
|
||||||
|
when "file"
|
||||||
|
des = content_tag(:div, link_publication_file(publication),
|
||||||
|
:class => "list_t_des")
|
||||||
|
else
|
||||||
|
end
|
||||||
|
|
||||||
|
content_tag(:div, publication.lab_title,
|
||||||
|
:class => "list_t_title") + des
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
def edit_or_delete publication
|
||||||
|
content_tag :div,
|
||||||
|
:class => "list_item_function" do
|
||||||
|
content_tag(:a, t("edit"),
|
||||||
|
:class => "journal_paper_edit admbg2 admtxt",
|
||||||
|
:href => edit_panel_personal_lab_desktop_personal_lab_path(publication),
|
||||||
|
"callback-method" => "editlab",
|
||||||
|
"ajax-remote" => "get") + \
|
||||||
|
content_tag(:a, t(:delete_),
|
||||||
|
"ajax-remote" => "delete",
|
||||||
|
"confirm-message" => t("sure?"),
|
||||||
|
"callback-method" => "labDelete",
|
||||||
|
:class => "journal_paper_delete admbg2 admtxt",
|
||||||
|
:href => panel_personal_lab_desktop_personal_lab_path(publication))
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def link_publication_file publication
|
||||||
|
publication.lab_files.map{|file|
|
||||||
|
link_to(image_tag(check_file_type(file.file.url)) + \
|
||||||
|
content_tag(:span, file.title, :class => "filetitle"),
|
||||||
|
file.file.url,
|
||||||
|
:class => "file",
|
||||||
|
"target" => "_blank")
|
||||||
|
}.inject(:+)
|
||||||
|
end
|
||||||
|
|
||||||
|
def check_file_type file
|
||||||
|
if not file.nil?
|
||||||
|
file_type = MIME::Types.type_for(file).first.to_s.split("/")[1]
|
||||||
|
file_type = "/assets/ft-icons/#{file_type}/#{file_type}-48_32.png"
|
||||||
|
else
|
||||||
|
file_type = ""
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def generate_authors_name ids
|
||||||
|
author_name = ids.map{|m|
|
||||||
|
if m == "0"
|
||||||
|
#{:id => 0, :text => current_user.name, :email => current_user.email }
|
||||||
|
{:id => 0, :text => current_user.name }
|
||||||
|
else
|
||||||
|
#{:id => m, :text => ConferenceCoAuthor.find(m).co_author, :email => ConferenceCoAuthor.find(m).email}
|
||||||
|
{:id => m, :text => ConferenceCoAuthor.find(m).co_author}
|
||||||
|
end
|
||||||
|
}
|
||||||
|
author_name.to_json
|
||||||
|
end
|
||||||
|
end
|
|
@ -0,0 +1,141 @@
|
||||||
|
<div class="toolbar hh1">
|
||||||
|
<div class="fn_g hp">
|
||||||
|
|
||||||
|
<%= f.submit t("save"), name: "commit", class: "fn_btn ini_input hp hh1 thmc2 thmtxt" %>
|
||||||
|
<% if not @lab.new_record? %>
|
||||||
|
<%= submit_tag t("cancel"), :type => "button", "callback-method"=>"cancellab", "ajax-remote" => "get", :href => panel_personal_lab_desktop_personal_labs_path, class: "fn_btn ini_input hp hh1 admbg2 admtxt" %>
|
||||||
|
|
||||||
|
<% end %>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1">Share</div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Full</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Abstract</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Friends</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Private</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Group</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1"><span class="icon-question-sign"></span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="overview" content-layout="column" base-width="420">
|
||||||
|
<div column="true">
|
||||||
|
<div class="s_form">
|
||||||
|
<ul>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= f.fields_for :lab_title_translations do |f| %>
|
||||||
|
<%= f.text_field locale,
|
||||||
|
size: "20",
|
||||||
|
placeholder: t("personal_lab.lab_title"),
|
||||||
|
class: "s_grid_12 s_grid",
|
||||||
|
value: (@lab.lab_title_translations[locale.to_s] rescue nil) %>
|
||||||
|
<% end %>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= f.fields_for :location_translations do |f| %>
|
||||||
|
<%= f.text_field locale,
|
||||||
|
size: "20",
|
||||||
|
placeholder: t("personal_lab.location"),
|
||||||
|
class: "s_grid_12 s_grid",
|
||||||
|
value: (@lab.location_translations[locale.to_s] rescue nil) %>
|
||||||
|
<% end %>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= f.fields_for :participating_professor_translations do |f| %>
|
||||||
|
<%= f.text_field locale,
|
||||||
|
size: "20",
|
||||||
|
placeholder: t("personal_lab.participating_professor"),
|
||||||
|
class: "s_grid_12 s_grid",
|
||||||
|
value: (@lab.participating_professor_translations[locale.to_s] rescue nil) %>
|
||||||
|
<% end %>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= f.fields_for :participating_student_translations do |f| %>
|
||||||
|
<%= f.text_field locale,
|
||||||
|
size: "20",
|
||||||
|
placeholder: t("personal_lab.participating_student"),
|
||||||
|
class: "s_grid_12 s_grid",
|
||||||
|
value: (@lab.participating_student_translations[locale.to_s] rescue nil) %>
|
||||||
|
<% end %>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= label_tag("", t("personal_lab.extension_no"), class: "s_grid_4 s_grid") %><%= f.text_field :extension_no, size: "20", class: "s_grid_8 s_grid"%>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= label_tag("", t("personal_lab.research_direction"), class: "s_grid_4 s_grid") %><%= f.text_field :research_direction, size: "20", class: "s_grid_8 s_grid"%>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= label_tag("", t("personal_lab.facility"), class: "s_grid_4 s_grid") %><%= f.text_field :facility, size: "20", class: "s_grid_8 s_grid"%>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= label_tag("", t("personal_project.year"), class: "s_grid_4 s_grid") %>
|
||||||
|
<%= select_year((@lab.year ? @lab.year.to_i : DateTime.now.year), {:start_year => DateTime.now.year, :end_year => 1930}, {:name => 'lab[year]',:class => 's_grid_4 s_grid'} ) %>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= f.text_area :keywords, size: "20x3", placeholder: t("personal_lab.keywords"), class: "s_grid_12 s_grid_h_2 s_grid"%>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div column="true">
|
||||||
|
<div class="s_form">
|
||||||
|
<ul>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= label_tag("", t("personal_lab.url"), class: "s_grid_4 s_grid") %><%= f.text_field :url, size: "20", class: "s_grid_8 s_grid"%>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= f.label :language, t("personal_lab.language"), :class => "s_grid s_grid_4" %>
|
||||||
|
<%= f.select :language, Lab::LANGUAGE_TYPES,{} ,{:class => "s_grid s_grid_8"} %>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= f.text_area :note, size: "20x3", placeholder: t("personal_lab.note"), class: "s_grid_12 s_grid s_grid_h_5"%>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div column="true">
|
||||||
|
<div class="s_form">
|
||||||
|
<ul>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<table class="s_table">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th class="s_grid_2"><%= t("personal_lab.file")%></th>
|
||||||
|
<th class="s_grid_4"><%= t("personal_lab.file_name")%></th>
|
||||||
|
<th class="s_grid_4"><%= t("personal_lab.description") %></th>
|
||||||
|
<th class="s_grid_2"></th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tfoot>
|
||||||
|
<tr>
|
||||||
|
<td colspan="4">
|
||||||
|
<div id='add_plugin_file' class="info_input plugin_files_block s_action">
|
||||||
|
<%= hidden_field_tag 'plugin_file_field_count', @lab.lab_files.count %>
|
||||||
|
<a class="add setting_btn thmc1 thmtxt w1 hh1 hp" href="#"><i class="icon-plus icon-white"></i> add</a>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tfoot>
|
||||||
|
<tbody>
|
||||||
|
<% @lab.lab_files.each_with_index do |lab_file, i| %>
|
||||||
|
<%= f.fields_for :lab_files, lab_file do |f| %>
|
||||||
|
<%= render :partial => 'form_file', :object => lab_file, :locals => {:f => f, :i => i} %>
|
||||||
|
<% end %>
|
||||||
|
<% end %>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<script>
|
||||||
|
var get_html = function(old_id,new_id){
|
||||||
|
return ("<%= escape_javascript(add_attribute 'form_file', f, :lab_files) %>").replace(old_id, new_id);
|
||||||
|
}
|
||||||
|
</script>
|
|
@ -0,0 +1,33 @@
|
||||||
|
<tr id="<%= "plugin_file_#{form_file.id}" if !form_file.new_record? %>" class="list_item">
|
||||||
|
<td>
|
||||||
|
<div>
|
||||||
|
<% if form_file.new_record? %>
|
||||||
|
<%= f.file_field :file, class: "s_grid_2" %>
|
||||||
|
<% end %>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<%= f.text_field :title, :class => 's_grid_4' %>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<%= f.fields_for :file_title_translations do |f| %>
|
||||||
|
<%= f.text_field locale,
|
||||||
|
class: 's_grid_4',
|
||||||
|
value: (form_file.file_title_translations[locale] rescue nil) %>
|
||||||
|
<% end %>
|
||||||
|
</td>
|
||||||
|
|
||||||
|
<td>
|
||||||
|
<span class="action">
|
||||||
|
<% if form_file.new_record? %>
|
||||||
|
<a class="delete"><i class="icon-remove"></i></a>
|
||||||
|
<% else %>
|
||||||
|
<%= f.hidden_field :id %>
|
||||||
|
<a class="remove_existing_record"><i class="icon-remove"></i></a>
|
||||||
|
<%= f.hidden_field :should_destroy, :value => nil, :class => 'should_destroy' %>
|
||||||
|
<% end %>
|
||||||
|
<%= form_file.file.file ? ( link_to '', form_file.file.url, {:class => 'icon-eye-open', :target => '_blank', :title => t(:view)} ) : '' %>
|
||||||
|
</span>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
|
@ -0,0 +1,3 @@
|
||||||
|
<%= form_for @lab, html: { multipart: true, "form-type"=>"ajax_form", "callback-method"=>"formCallback"}, url: panel_personal_lab_desktop_personal_labs_path(@lab) do |f| %>
|
||||||
|
<%= render partial: 'form', locals: {:f => f} %>
|
||||||
|
<%end%>
|
|
@ -0,0 +1,83 @@
|
||||||
|
<div class="toolbar hh1">
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1"><span class="icon-check"></span></div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul id="journal_selection_options">
|
||||||
|
<li><a class="hp hh1 admtxt" href="all" ajax-remote="false" callback-method="allnone">All</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="none" ajax-remote="false" callback-method="allnone">None</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1">More</div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Delete</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Tag</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1">Tag</div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">All</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Starred</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">MIT</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1">Status</div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">All</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Published</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Pending</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1">View</div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul id="journal_view_selection">
|
||||||
|
<li><%= link_to "Title", panel_personal_lab_desktop_personal_labs_path + "?view=lab_title", :class => "hp hh1 admtxt", "ajax-remote" => "get" %></li>
|
||||||
|
<li><%= link_to "File", panel_personal_lab_desktop_personal_labs_path + "?view=file", :class => "hp hh1 admtxt", "ajax-remote" => "get" %></li>
|
||||||
|
<li><%= link_to "Keywords", panel_personal_lab_desktop_personal_labs_path + "?view=keywords", :class => "hp hh1 admtxt", "ajax-remote" => "get" %></li>
|
||||||
|
<li><%= link_to "Location", panel_personal_lab_desktop_personal_labs_path + "?view=location", :class => "hp hh1 admtxt", "ajax-remote" => "get" %></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1">Share</div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Full</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Abstract</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Friends</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Private</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Group</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1" id='ns'>New Share</div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul>
|
||||||
|
<li><a class="hp hh1 admtxt remote_url" href="<%= panel_personal_lab_desktop_personal_labs_path %>">Full</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Abstract</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Friends</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Private</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Group</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1"><span class="icon-question-sign"></span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="overview" page-name="journal_p_list" content-layout="datalist" base-width="300" per-column="<%= @per_column.to_s %>" pagination-var="view=<%= @view_by %>&page" >
|
||||||
|
<% @labs.each do |w| %>
|
||||||
|
<%= publication_record w, @view_by%>
|
||||||
|
<% end %>
|
||||||
|
</div>
|
|
@ -1,8 +1,10 @@
|
||||||
<div id="research_p">
|
<%= stylesheet_link_tag "/assets/personal_lab/desktop/personal_lab" %>
|
||||||
|
<%= javascript_include_tag "personal_lab/desktop/personal_lab" %>
|
||||||
|
<div id="books">
|
||||||
<div id="content">
|
<div id="content">
|
||||||
<div id="header" class="hh2">
|
<div id="header" class="hh2">
|
||||||
<div class="dtitle w2 hh2 hp">
|
<div class="dtitle w2 hh2 hp">
|
||||||
<span class="thmtxth">Research Projects</span>
|
<span class="thmtxth">Books</span>
|
||||||
</div>
|
</div>
|
||||||
<div id="search_app" class="hfn w2 hh1 hp thmc3">
|
<div id="search_app" class="hfn w2 hh1 hp thmc3">
|
||||||
<input type="text" class="ini_input form" value="Search" id="searchbox" />
|
<input type="text" class="ini_input form" value="Search" id="searchbox" />
|
||||||
|
@ -13,14 +15,14 @@
|
||||||
<div id="panel_l" class="ph">
|
<div id="panel_l" class="ph">
|
||||||
<div class="s_menu sm_v" content-type="menu">
|
<div class="s_menu sm_v" content-type="menu">
|
||||||
<ul id='setting_left_nav'>
|
<ul id='setting_left_nav'>
|
||||||
<li><a href="<%= desktop_publications_research_p_list_path %>" callback-method="list" class="hh1 w2 hp active thmc1 thmtxt" onclick='return false;'>List</a></li>
|
<li><a href="<%= panel_personal_lab_desktop_personal_labs_path %>" callback-method="list" class="hh1 w2 hp active thmc1 thmtxt" load="true" onclick='return false;'>List</a></li>
|
||||||
<li><a href="<%= desktop_publications_research_p_add_path %>" callback-method="add_this" class="admtxt hh1 w2 hp" onclick='return false;'>Add/Edit</a></li>
|
<li><a href="<%= new_panel_personal_lab_desktop_personal_lab_path %>" callback-method="addlab" class="admtxt hh1 w2 hp" onclick='return false;'>Add/Edit</a></li>
|
||||||
<li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Projects</a></li>
|
<!-- <li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Books</a></li>
|
||||||
<li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Co-Authors</a></li>
|
<li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Co-Authors</a></li>
|
||||||
<li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Tags & Keywords</a></li>
|
<li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Tags & Keywords</a></li>
|
||||||
<li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Analysis</a></li>
|
<li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Analysis</a></li>
|
||||||
<li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Import</a></li>
|
<li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Import</a></li>
|
||||||
<li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Export</a></li>
|
<li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Export</a></li> -->
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
|
@ -0,0 +1,3 @@
|
||||||
|
<%= form_for @lab, html: { multipart: true, "form-type"=>"ajax_form", "callback-method"=>"formCallback"}, url: panel_personal_lab_desktop_personal_labs_path do |f| %>
|
||||||
|
<%= render partial: 'form', locals: {:f => f} %>
|
||||||
|
<%end%>
|
|
@ -1,4 +1,57 @@
|
||||||
en:
|
en:
|
||||||
|
|
||||||
module_name:
|
module_name:
|
||||||
personal_lab: Lab
|
personal_lab: Lab
|
||||||
|
personal_lab:
|
||||||
|
book_title : "Book Title"
|
||||||
|
lab_title : "Lab Title"
|
||||||
|
extracted_chapters : "Extracted Chapters"
|
||||||
|
location : "Location"
|
||||||
|
participating_professor : "Participating Professor"
|
||||||
|
participating_student : "Participating Student"
|
||||||
|
extension_no : "Extension Number"
|
||||||
|
research_direction : "Research Direction"
|
||||||
|
facility : "Facility"
|
||||||
|
publishers : "Publishers"
|
||||||
|
authors : "Authors"
|
||||||
|
tags : "Tags"
|
||||||
|
year : "Year"
|
||||||
|
language : "Language"
|
||||||
|
isbn : "ISSN(ISBN)"
|
||||||
|
vol_no : "Vol.No"
|
||||||
|
issue_no : "Issue.No"
|
||||||
|
form_to_start : "From"
|
||||||
|
form_to_end : "To"
|
||||||
|
total_pages : "Total Pages"
|
||||||
|
keywords : "Keywords"
|
||||||
|
abstract : "Abstract"
|
||||||
|
publication_date : "Date of Publication"
|
||||||
|
url : "Reference URL"
|
||||||
|
note : "Note"
|
||||||
|
level_type : "Level Type"
|
||||||
|
author_type : "Author Type"
|
||||||
|
from : "From"
|
||||||
|
to : "To"
|
||||||
|
file : "File"
|
||||||
|
file_name : "File name"
|
||||||
|
description : "File Description"
|
||||||
|
pages : "Pages"
|
||||||
|
book_paper_type : "Book Paper Type"
|
||||||
|
|
||||||
|
create_success : "Successfully Create"
|
||||||
|
update_success : "Successfully Update"
|
||||||
|
delete_success : "Successfully Delete"
|
||||||
|
add: "Add"
|
||||||
|
back: "Back"
|
||||||
|
delete: "Delete"
|
||||||
|
edit: "Edit"
|
||||||
|
nothing: "Nothing"
|
||||||
|
show: "Show"
|
||||||
|
sure?: "Are you sure?"
|
||||||
|
update: "Update"
|
||||||
|
yes_: "Yes"
|
||||||
|
no_: "No"
|
||||||
|
cancel : "Cancel"
|
||||||
|
save: "save"
|
||||||
|
hintText: "Type in a search term"
|
||||||
|
noResultsText: "No results"
|
||||||
|
searchingText: "Searching…"
|
||||||
|
|
|
@ -1,4 +1,57 @@
|
||||||
zh_tw:
|
zh_tw:
|
||||||
|
|
||||||
module_name:
|
module_name:
|
||||||
personal_lab: 實驗室
|
personal_lab: Lab
|
||||||
|
personal_lab:
|
||||||
|
book_title : "期刊名稱"
|
||||||
|
lab_title : "Lab Title"
|
||||||
|
extracted_chapters : "Extracted Chapters"
|
||||||
|
participating_professor : "Participating Professor"
|
||||||
|
participating_student : "Participating Student"
|
||||||
|
research_direction : "Research Direction"
|
||||||
|
facility : "Facility"
|
||||||
|
extension_no : "Extension Number"
|
||||||
|
location : "Location"
|
||||||
|
publishers : "Publishers"
|
||||||
|
authors : "作者"
|
||||||
|
tags : "領域"
|
||||||
|
year : "年度"
|
||||||
|
language : "語言"
|
||||||
|
isbn : "ISSN(ISBN)"
|
||||||
|
vol_no : "卷數"
|
||||||
|
issue_no : "期數"
|
||||||
|
form_to_start : "起"
|
||||||
|
form_to_end : "訖"
|
||||||
|
total_pages : "總頁數"
|
||||||
|
keywords : "關鍵字"
|
||||||
|
abstract : "摘要"
|
||||||
|
publication_date : "發表日期"
|
||||||
|
url : "參考連結"
|
||||||
|
note : "記事"
|
||||||
|
level_type : "期刊類別"
|
||||||
|
author_type : "作者類別"
|
||||||
|
from : "起"
|
||||||
|
to : "訖"
|
||||||
|
file : "檔案"
|
||||||
|
file_name : "檔案名稱"
|
||||||
|
description : "描述"
|
||||||
|
pages : "Pages"
|
||||||
|
book_paper_type : "Book Paper Type"
|
||||||
|
|
||||||
|
create_success : "新增完成!!"
|
||||||
|
update_success : "更新完成!!"
|
||||||
|
delete_success : "刪除成功!!"
|
||||||
|
add: "新增"
|
||||||
|
back: "返回"
|
||||||
|
delete: "刪除"
|
||||||
|
edit: "編輯"
|
||||||
|
nothing: "無"
|
||||||
|
show: "顯示"
|
||||||
|
sure?: "您肯定嗎?"
|
||||||
|
update: "更新"
|
||||||
|
yes_: "是"
|
||||||
|
no_: "否"
|
||||||
|
cancel : "取消"
|
||||||
|
save: "儲存"
|
||||||
|
hintText: "請輸入搜尋關鍵字"
|
||||||
|
noResultsText: "沒有相關的比對結果"
|
||||||
|
searchingText: "搜尋中…"
|
||||||
|
|
|
@ -2,6 +2,10 @@ Rails.application.routes.draw do
|
||||||
|
|
||||||
namespace :panel do
|
namespace :panel do
|
||||||
namespace :personal_lab do
|
namespace :personal_lab do
|
||||||
|
namespace :desktop do
|
||||||
|
match "lab_window" => "personal_labs#lab_window"
|
||||||
|
resources :personal_labs
|
||||||
|
end
|
||||||
namespace :back_end do
|
namespace :back_end do
|
||||||
|
|
||||||
match 'lab_setting' => "labs#lab_setting" ,:as => :lab_setting
|
match 'lab_setting' => "labs#lab_setting" ,:as => :lab_setting
|
||||||
|
|
|
@ -0,0 +1,158 @@
|
||||||
|
orbitDesktop.prototype.initializePersonalPatent = function(target,url,cache){ // this init journal papers
|
||||||
|
this.initializePersonalPatent.formCallback = function(data){
|
||||||
|
if(data.success){
|
||||||
|
o.notify(data.msg,"success");
|
||||||
|
o.sub_menu_item($("div[content-type=menu] a").eq(0));
|
||||||
|
}else{
|
||||||
|
o.notify(data.msg,"alert");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
this.initializePersonalPatent.list = function(){ // to open list part in journal papers page
|
||||||
|
var journalData;
|
||||||
|
var bindHandlers = function(){ // to bind handlers for list page
|
||||||
|
|
||||||
|
}
|
||||||
|
bindHandlers();
|
||||||
|
|
||||||
|
var bindSecondaryHandlers = function(){
|
||||||
|
$("#journal_p div#paper_list a.icon-check-empty").click(function(){
|
||||||
|
if($(this).hasClass("icon-check-empty")){
|
||||||
|
$(this).switchClass("icon-check-empty","icon-check",0);
|
||||||
|
} else if($(this) .hasClass("icon-check")) {
|
||||||
|
$(this).switchClass("icon-check","icon-check-empty",0);
|
||||||
|
} else if($(this).hasClass("icon-star")){
|
||||||
|
$(this).removeClass("icon-star").addClass("icon-star-empty");
|
||||||
|
} else if($(this).hasClass("icon-star-empty")){
|
||||||
|
$(this).removeClass("icon-star-empty").addClass("icon-star");
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.initializePersonalPatent.patentDelete = function(data,dom){
|
||||||
|
var parent = dom.parent().parent();
|
||||||
|
if(data.success){
|
||||||
|
parent.hide("slide",function(){parent.remove();});
|
||||||
|
o.notify(data.msg,"success");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
this.initializePersonalPatent.cancelpatent = function(){
|
||||||
|
o.highlight_sub_menu_item(0);
|
||||||
|
}
|
||||||
|
|
||||||
|
this.initializePersonalPatent.editpatent = function(){
|
||||||
|
o.highlight_sub_menu_item(1);
|
||||||
|
var uploadFiles = function(){
|
||||||
|
$('#add_plugin_file a.add').click(function(){
|
||||||
|
var new_id = $(this).prev().attr('value');
|
||||||
|
var old_id = new RegExp("new_writing_journal_files", "g");
|
||||||
|
$(this).prev().attr('value', parseInt(new_id) + 1);
|
||||||
|
var x = get_html(old_id,new_id);
|
||||||
|
var newfield = $(x);
|
||||||
|
$(this).parents('table').append(newfield);
|
||||||
|
newfield.find('.action a.delete').click(function(){
|
||||||
|
newfield.remove();
|
||||||
|
});
|
||||||
|
return false;
|
||||||
|
});
|
||||||
|
$('.action a.remove_existing_record').click(function(){
|
||||||
|
$(this).next('.should_destroy').attr('value', 1);
|
||||||
|
$("tr#add_plugin_file_" + $(this).prev().attr('value')).hide();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
var preData = function(){
|
||||||
|
$("#writing_journal_author_tokens").select2('data', JSON.parse($("#writing_journal_author_tokens").attr('data-pre')));
|
||||||
|
}
|
||||||
|
uploadFiles();
|
||||||
|
// preData();
|
||||||
|
}
|
||||||
|
|
||||||
|
this.initializePersonalPatent.addpatent = function(){ // to open add pages in journal papers page
|
||||||
|
var uploadFiles = function(){
|
||||||
|
$('#add_plugin_file a.add').click(function(){
|
||||||
|
var new_id = $(this).prev().attr('value');
|
||||||
|
var old_id = new RegExp("new_writing_journal_files", "g");
|
||||||
|
$(this).prev().attr('value', parseInt(new_id) + 1);
|
||||||
|
var x = get_html(old_id,new_id);
|
||||||
|
var newfield = $(x);
|
||||||
|
$(this).parents('table').append(newfield);
|
||||||
|
newfield.find('.action a.delete').click(function(){
|
||||||
|
newfield.remove();
|
||||||
|
});
|
||||||
|
return false;
|
||||||
|
});
|
||||||
|
$('.action a.remove_existing_record').click(function(){
|
||||||
|
$(this).next('.should_destroy').attr('value', 1);
|
||||||
|
$("tr#add_plugin_file_" + $(this).prev().attr('value')).hide();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
// console.log("hi");
|
||||||
|
var bindHandlers = function(){
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
bindHandlers();
|
||||||
|
uploadFiles();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
this.initializePersonalPatent.coAuthorformCallback = function(data){
|
||||||
|
if(data.success){
|
||||||
|
o.notify(data.msg,"success");
|
||||||
|
o.sub_menu_item($("div[content-type=menu] a").eq(3));
|
||||||
|
}else{
|
||||||
|
o.notify(data.msg,"alert");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.initializePersonalPatent.coauthor = function(){ // to open add pages in coauthor page
|
||||||
|
var bindHandlers = function(){ // to bind handlers for add page
|
||||||
|
|
||||||
|
}
|
||||||
|
bindHandlers();
|
||||||
|
}
|
||||||
|
this.initializePersonalPatent.coauthorRelationForm = function(data){
|
||||||
|
if(data.success){
|
||||||
|
o.notify(data.msg,"success");
|
||||||
|
$("#co_author_relation_table").html(data.newvalue);
|
||||||
|
}else{
|
||||||
|
o.notify(data.msg,"alert");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.initializePersonalPatent.coauthorRelationEditForm = function(data){
|
||||||
|
if(data.success){
|
||||||
|
o.notify(data.msg,"success");
|
||||||
|
var x = o.layout_data.generate_layout_html(data.newvalue);
|
||||||
|
$("div[container=true] div.overview").html(x.markup);
|
||||||
|
}else{
|
||||||
|
o.notify(data.msg,"alert");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.initializePersonalPatent.allnone = function(d,o){
|
||||||
|
switch(o.attr("href")){
|
||||||
|
case "all":
|
||||||
|
$("div.overview a.icon-check-empty").removeClass("icon-check-empty").addClass("icon-check");
|
||||||
|
break;
|
||||||
|
case "none":
|
||||||
|
$("div.overview a.icon-check").removeClass("icon-check").addClass("icon-check-empty");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.initializePersonalPatent.allnone = function(d,o){
|
||||||
|
switch(o.attr("href")){
|
||||||
|
case "all":
|
||||||
|
$("div.overview a.icon-check-empty").removeClass("icon-check-empty").addClass("icon-check");
|
||||||
|
break;
|
||||||
|
case "none":
|
||||||
|
$("div.overview a.icon-check").removeClass("icon-check").addClass("icon-check-empty");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,115 @@
|
||||||
|
/* Books */
|
||||||
|
[page-name="books_list"] .list_t_item .inner {
|
||||||
|
padding-left: 30px; }
|
||||||
|
[page-name="books_list"] .list_item_action {
|
||||||
|
font-size: 12px;
|
||||||
|
float: left;
|
||||||
|
margin-left: -30px; }
|
||||||
|
[page-name="books_list"] .list_item_action a {
|
||||||
|
display: block;
|
||||||
|
width: 20px;
|
||||||
|
height: 20px;
|
||||||
|
line-height: 20px;
|
||||||
|
margin: 1px 1px 6px 1px; }
|
||||||
|
[page-name="books_list"] .list_item_action .icon-star-empty {
|
||||||
|
color: #999;
|
||||||
|
font-size: 20px; }
|
||||||
|
[page-name="books_list"] .list_item_action .icon-star {
|
||||||
|
color: #faa732;
|
||||||
|
font-size: 20px; }
|
||||||
|
[page-name="books_list"] .list_item_action .icon-check-empty {
|
||||||
|
color: #999;
|
||||||
|
font-size: 20px; }
|
||||||
|
[page-name="books_list"] .list_item_action .icon-check {
|
||||||
|
color: #333;
|
||||||
|
font-size: 20px; }
|
||||||
|
[page-name="books_list"] .file_view .list_t_des {
|
||||||
|
overflow: hidden; }
|
||||||
|
[page-name="books_list"] .file_view .file {
|
||||||
|
float: left;
|
||||||
|
width: 120px;
|
||||||
|
height: 50px;
|
||||||
|
padding: 6px;
|
||||||
|
margin: 1px;
|
||||||
|
position: relative;
|
||||||
|
-webkit-box-sizing: border-box;
|
||||||
|
/* webkit */
|
||||||
|
-khtml-box-sizing: border-box;
|
||||||
|
/* konqueror */
|
||||||
|
-moz-box-sizing: border-box;
|
||||||
|
/* firefox */
|
||||||
|
-ms-box-sizing: border-box;
|
||||||
|
/* ie */
|
||||||
|
box-sizing: border-box;
|
||||||
|
/* css3 */ }
|
||||||
|
[page-name="books_list"] .file_view .file:hover {
|
||||||
|
background-color: #f7f7f7; }
|
||||||
|
[page-name="books_list"] .file_view .file img {
|
||||||
|
width: 38px;
|
||||||
|
height: 38px;
|
||||||
|
position: absolute;
|
||||||
|
left: 6px;
|
||||||
|
top: 6px; }
|
||||||
|
[page-name="books_list"] .file_view .file .filetitle {
|
||||||
|
display: block;
|
||||||
|
width: 100%;
|
||||||
|
height: 38px;
|
||||||
|
padding-left: 40px;
|
||||||
|
overflow: hidden;
|
||||||
|
-webkit-box-sizing: border-box;
|
||||||
|
/* webkit */
|
||||||
|
-khtml-box-sizing: border-box;
|
||||||
|
/* konqueror */
|
||||||
|
-moz-box-sizing: border-box;
|
||||||
|
/* firefox */
|
||||||
|
-ms-box-sizing: border-box;
|
||||||
|
/* ie */
|
||||||
|
box-sizing: border-box;
|
||||||
|
/* css3 */ }
|
||||||
|
|
||||||
|
/* Books Books list */
|
||||||
|
[page-name="books_books"] .datalist_item .inner {
|
||||||
|
padding-left: 30px; }
|
||||||
|
[page-name="books_books"] .list_item_action {
|
||||||
|
font-size: 12px;
|
||||||
|
float: left;
|
||||||
|
margin-left: -30px; }
|
||||||
|
[page-name="books_books"] .list_item_action i {
|
||||||
|
color: #999;
|
||||||
|
font-size: 20px;
|
||||||
|
display: block;
|
||||||
|
width: 20px;
|
||||||
|
height: 20px;
|
||||||
|
line-height: 20px;
|
||||||
|
margin: 1px 1px 6px 1px; }
|
||||||
|
[page-name="books_books"] .list_t_desc {
|
||||||
|
font-family: Arial, sans-serif;
|
||||||
|
font-size: 12px;
|
||||||
|
color: #999; }
|
||||||
|
|
||||||
|
/* Books Co-Author */
|
||||||
|
[page-name="books_coauthor"] .list_t_item {
|
||||||
|
height: 110px; }
|
||||||
|
[page-name="books_coauthor"] .list_item_function a {
|
||||||
|
display: inline-block;
|
||||||
|
padding: 4px;
|
||||||
|
font-family: Arial, sans-serif;
|
||||||
|
font-size: 11px;
|
||||||
|
-webkit-text-size-adjust: none; }
|
||||||
|
[page-name="books_coauthor"] .info {
|
||||||
|
font-family: Arial, sans-serif; }
|
||||||
|
[page-name="books_coauthor"] .info li {
|
||||||
|
margin-bottom: 8px;
|
||||||
|
color: #999; }
|
||||||
|
[page-name="books_coauthor"] .info .name {
|
||||||
|
font-size: 18px;
|
||||||
|
line-height: 24px;
|
||||||
|
color: #333; }
|
||||||
|
|
||||||
|
/* Books Co-Author Relationship*/
|
||||||
|
[page-name="books_coauthor_relation"] .edit_co_author_relation {
|
||||||
|
/*margin-left: -10px;*/ }
|
||||||
|
[page-name="books_coauthor_relation"] .form_space {
|
||||||
|
margin-bottom: 10px;
|
||||||
|
font-size: 18px;
|
||||||
|
font-family: Arial, sans-serif; }
|
|
@ -0,0 +1,123 @@
|
||||||
|
@import "desktop-helper";
|
||||||
|
|
||||||
|
/* Books */
|
||||||
|
[page-name="books_list"] {
|
||||||
|
.list_t_item .inner { padding-left: 30px; }
|
||||||
|
.list_item_action {
|
||||||
|
font-size: 12px;
|
||||||
|
float: left;
|
||||||
|
margin-left: -30px;
|
||||||
|
|
||||||
|
a {
|
||||||
|
display: block;
|
||||||
|
width: 20px;
|
||||||
|
height: 20px;
|
||||||
|
line-height: 20px;
|
||||||
|
margin: 1px 1px 6px 1px;
|
||||||
|
}
|
||||||
|
.icon-star-empty { color: #999; font-size: 20px; }
|
||||||
|
.icon-star { color: #faa732; font-size: 20px; }
|
||||||
|
.icon-check-empty { color: #999; font-size: 20px; }
|
||||||
|
.icon-check { color: #333; font-size: 20px; }
|
||||||
|
}
|
||||||
|
|
||||||
|
.file_view {
|
||||||
|
.list_t_des {
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
.file {
|
||||||
|
float: left;
|
||||||
|
width: 120px;
|
||||||
|
height: 50px;
|
||||||
|
padding: 6px;
|
||||||
|
margin: 1px;
|
||||||
|
position: relative;
|
||||||
|
@include box-sizing;
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
background-color: lighten($gray, 10%);
|
||||||
|
}
|
||||||
|
img {
|
||||||
|
width: 38px;
|
||||||
|
height: 38px;
|
||||||
|
position: absolute;
|
||||||
|
left: 6px;
|
||||||
|
top: 6px;
|
||||||
|
}
|
||||||
|
.filetitle {
|
||||||
|
display: block;
|
||||||
|
width: 100%;
|
||||||
|
height: 38px;
|
||||||
|
padding-left: 40px;
|
||||||
|
overflow: hidden;
|
||||||
|
@include box-sizing;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Books Books list */
|
||||||
|
[page-name="books_books"] {
|
||||||
|
|
||||||
|
.datalist_item .inner {
|
||||||
|
padding-left: 30px;
|
||||||
|
}
|
||||||
|
.list_item_action {
|
||||||
|
font-size: 12px;
|
||||||
|
float: left;
|
||||||
|
margin-left: -30px;
|
||||||
|
}
|
||||||
|
.list_item_action i {
|
||||||
|
color: #999;
|
||||||
|
font-size: 20px;
|
||||||
|
display: block;
|
||||||
|
width: 20px;
|
||||||
|
height: 20px;
|
||||||
|
line-height: 20px;
|
||||||
|
margin: 1px 1px 6px 1px;
|
||||||
|
}
|
||||||
|
.list_t_desc {
|
||||||
|
font-family: Arial, sans-serif;
|
||||||
|
font-size: 12px;
|
||||||
|
color: #999;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Books Co-Author */
|
||||||
|
[page-name="books_coauthor"] {
|
||||||
|
.list_t_item {
|
||||||
|
height: 110px;
|
||||||
|
}
|
||||||
|
.list_item_function {}
|
||||||
|
.list_item_function a {
|
||||||
|
display: inline-block;
|
||||||
|
padding: 4px;
|
||||||
|
font-family: Arial, sans-serif;
|
||||||
|
font-size: 11px;
|
||||||
|
-webkit-text-size-adjust: none;
|
||||||
|
}
|
||||||
|
.info {
|
||||||
|
font-family: Arial, sans-serif;
|
||||||
|
}
|
||||||
|
.info li {
|
||||||
|
margin-bottom: 8px;
|
||||||
|
color: #999;
|
||||||
|
}
|
||||||
|
.info .name {
|
||||||
|
font-size: 18px;
|
||||||
|
line-height: 24px;
|
||||||
|
color: #333;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Books Co-Author Relationship*/
|
||||||
|
[page-name="books_coauthor_relation"]{
|
||||||
|
.edit_co_author_relation {
|
||||||
|
/*margin-left: -10px;*/
|
||||||
|
}
|
||||||
|
.form_space {
|
||||||
|
margin-bottom: 10px;
|
||||||
|
font-size: 18px;
|
||||||
|
font-family: Arial, sans-serif;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,71 @@
|
||||||
|
class Panel::PersonalPatent::Desktop::PersonalPatentsController < ApplicationController
|
||||||
|
|
||||||
|
def index
|
||||||
|
@patents = WritingPatent.where(create_user_id: current_user.id)
|
||||||
|
@view_by = params[:view]
|
||||||
|
page = params[:page]
|
||||||
|
page ||= 1
|
||||||
|
|
||||||
|
@per_column = 5
|
||||||
|
|
||||||
|
case @view_by
|
||||||
|
when "abstract"
|
||||||
|
@per_column = 1
|
||||||
|
when "file"
|
||||||
|
@per_column = 2
|
||||||
|
end
|
||||||
|
|
||||||
|
if @view_by.nil?
|
||||||
|
@view_by = " "
|
||||||
|
@patents = @patents.asc(:paper_title)
|
||||||
|
else
|
||||||
|
@patents = @patents.asc(@view_by).asc(:paper_title)
|
||||||
|
end
|
||||||
|
@patents = @patents.page(page).per(50)
|
||||||
|
respond_to do |format|
|
||||||
|
format.html { render :layout => false}
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def new
|
||||||
|
@patent = WritingPatent.new
|
||||||
|
render :layout => false
|
||||||
|
end
|
||||||
|
|
||||||
|
def create
|
||||||
|
params[:writing_patent][:create_user_id] = current_user.id
|
||||||
|
@patent = WritingPatent.new(params[:writing_patent])
|
||||||
|
if @patent.save
|
||||||
|
render json: {success: true, msg: t('create_success')}.to_json
|
||||||
|
else
|
||||||
|
error_msg = @patent.errors.full_messages.join("<br />")
|
||||||
|
render json: {success: false, msg: error_msg}.to_json
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def edit
|
||||||
|
@patent = WritingPatent.find(params[:id])
|
||||||
|
render :layout => false
|
||||||
|
end
|
||||||
|
|
||||||
|
def update
|
||||||
|
params[:writing_patent][:create_user_id] = current_user.id
|
||||||
|
@patent = WritingPatent.new(params[:writing_patent])
|
||||||
|
if @patent.update_attributes(params[:writing_patent])
|
||||||
|
render json: {success: true, msg: t('create_success')}.to_json
|
||||||
|
else
|
||||||
|
error_msg = @patent.errors.full_messages.join("<br />")
|
||||||
|
render json: {success: false, msg: error_msg}.to_json
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def destroy
|
||||||
|
@patent = WritingPatent.find(params[:id])
|
||||||
|
@patent.destroy
|
||||||
|
render :json => {success: true, msg: t('delete_success')}
|
||||||
|
end
|
||||||
|
|
||||||
|
def patent_window
|
||||||
|
render :layout => false
|
||||||
|
end
|
||||||
|
end
|
|
@ -0,0 +1,96 @@
|
||||||
|
module Panel::PersonalPatent::Desktop::PersonalPatentsHelper
|
||||||
|
def publication_record publication, view
|
||||||
|
content_tag :li,
|
||||||
|
"item" => "true",
|
||||||
|
:class => "list_t_item" do
|
||||||
|
marker + \
|
||||||
|
content(publication, view) + \
|
||||||
|
edit_or_delete(publication)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def marker
|
||||||
|
content_tag :div,
|
||||||
|
:class => "list_item_action" do
|
||||||
|
content_tag(:a, "",:href=>"",
|
||||||
|
:class => "icon-check-empty",
|
||||||
|
"toggle-onclick"=>"icon-check-empty icon-check",
|
||||||
|
"ajax-remote"=>"false") + \
|
||||||
|
content_tag(:a, "",:href=>"",
|
||||||
|
:class => "icon-star-empty",
|
||||||
|
"toggle-onclick"=>"icon-star-empty icon-star",
|
||||||
|
"ajax-remote"=>"false")
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def content publication, view
|
||||||
|
case view
|
||||||
|
when "patent_title"
|
||||||
|
des = content_tag(:div, publication.patent_title,
|
||||||
|
:class => "list_t_des")
|
||||||
|
when "keywords"
|
||||||
|
des = content_tag(:div, publication.keywords,
|
||||||
|
:class => "list_t_des")
|
||||||
|
when "abstract"
|
||||||
|
des = content_tag(:div, publication.abstract,
|
||||||
|
:class => "list_t_des")
|
||||||
|
when "file"
|
||||||
|
des = content_tag(:div, link_publication_file(publication),
|
||||||
|
:class => "list_t_des")
|
||||||
|
else
|
||||||
|
end
|
||||||
|
|
||||||
|
content_tag(:div, publication.patent_title,
|
||||||
|
:class => "list_t_title") + des
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
def edit_or_delete publication
|
||||||
|
content_tag :div,
|
||||||
|
:class => "list_item_function" do
|
||||||
|
content_tag(:a, t("edit"),
|
||||||
|
:class => "journal_paper_edit admbg2 admtxt",
|
||||||
|
:href => edit_panel_personal_patent_desktop_personal_patent_path(publication),
|
||||||
|
"callback-method" => "editpatent",
|
||||||
|
"ajax-remote" => "get") + \
|
||||||
|
content_tag(:a, t(:delete_),
|
||||||
|
"ajax-remote" => "delete",
|
||||||
|
"confirm-message" => t("sure?"),
|
||||||
|
"callback-method" => "patentDelete",
|
||||||
|
:class => "journal_paper_delete admbg2 admtxt",
|
||||||
|
:href => panel_personal_patent_desktop_personal_patent_path(publication))
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def link_publication_file publication
|
||||||
|
publication.writing_patent_files.map{|file|
|
||||||
|
link_to(image_tag(check_file_type(file.file.url)) + \
|
||||||
|
content_tag(:span, file.title, :class => "filetitle"),
|
||||||
|
file.file.url,
|
||||||
|
:class => "file",
|
||||||
|
"target" => "_blank")
|
||||||
|
}.inject(:+)
|
||||||
|
end
|
||||||
|
|
||||||
|
def check_file_type file
|
||||||
|
if not file.nil?
|
||||||
|
file_type = MIME::Types.type_for(file).first.to_s.split("/")[1]
|
||||||
|
file_type = "/assets/ft-icons/#{file_type}/#{file_type}-48_32.png"
|
||||||
|
else
|
||||||
|
file_type = ""
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def generate_authors_name ids
|
||||||
|
author_name = ids.map{|m|
|
||||||
|
if m == "0"
|
||||||
|
#{:id => 0, :text => current_user.name, :email => current_user.email }
|
||||||
|
{:id => 0, :text => current_user.name }
|
||||||
|
else
|
||||||
|
#{:id => m, :text => ConferenceCoAuthor.find(m).co_author, :email => ConferenceCoAuthor.find(m).email}
|
||||||
|
{:id => m, :text => ConferenceCoAuthor.find(m).co_author}
|
||||||
|
end
|
||||||
|
}
|
||||||
|
author_name.to_json
|
||||||
|
end
|
||||||
|
end
|
|
@ -0,0 +1,120 @@
|
||||||
|
<div class="toolbar hh1">
|
||||||
|
<div class="fn_g hp">
|
||||||
|
|
||||||
|
<%= f.submit t("save"), name: "commit", class: "fn_btn ini_input hp hh1 thmc2 thmtxt" %>
|
||||||
|
<% if not @patent.new_record? %>
|
||||||
|
<%= submit_tag t("cancel"), :type => "button", "callback-method"=>"cancelpatent", "ajax-remote" => "get", :href => panel_personal_patent_desktop_personal_patents_path, class: "fn_btn ini_input hp hh1 admbg2 admtxt" %>
|
||||||
|
|
||||||
|
<% end %>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1">Share</div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Full</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Abstract</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Friends</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Private</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Group</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1"><span class="icon-question-sign"></span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="overview" content-layout="column" base-width="420">
|
||||||
|
<div column="true">
|
||||||
|
<div class="s_form">
|
||||||
|
<ul>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= f.fields_for :patent_title_translations do |f| %>
|
||||||
|
<%= f.text_field locale,
|
||||||
|
size: "20",
|
||||||
|
placeholder: t("personal_patent.patent_title"),
|
||||||
|
class: "s_grid_12 s_grid",
|
||||||
|
value: (@patent.patent_title_translations[locale.to_s] rescue nil) %>
|
||||||
|
<% end %>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= label_tag("", t("personal_patent.patent_no"), class: "s_grid_4 s_grid") %><%= f.text_field :patent_no, size: "20", class: "s_grid_8 s_grid"%>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= label_tag("", t("personal_patent.patent_country"), class: "s_grid_4 s_grid") %><%= f.text_field :patent_country, size: "20", class: "s_grid_8 s_grid"%>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= label_tag("", t("personal_patent.publication_date"), class: "s_grid_4 s_grid") %>
|
||||||
|
<%= f.date_select :publish_date, {:use_month_numbers => true, :start_year => Time.now.year, :end_year => 1930, :order => [:year] }, {:class => 's_grid_4 s_grid'} %>
|
||||||
|
<%= f.date_select :publish_date, {:use_month_numbers => true, :order => [:month, :day] }, {:class => 's_grid_2 s_grid'} %>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= label_tag("", t("personal_patent.patent_category"), class: "s_grid_4 s_grid") %>
|
||||||
|
<%= f.select :writing_patent_category_id, WritingPatentCategory.all.collect {|t| [ t.title, t.id ]}, {:class => "s_grid s_grid_8"} %>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= label_tag("", t("personal_project.year"), class: "s_grid_4 s_grid") %>
|
||||||
|
<%= select_year((@patent.year ? @patent.year.to_i : DateTime.now.year), {:start_year => DateTime.now.year, :end_year => 1930}, {:name => 'writing_patent[year]',:class => 's_grid_4 s_grid'} ) %>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= label_tag("", t("personal_patent.url"), class: "s_grid_4 s_grid") %><%= f.text_field :url, size: "20", class: "s_grid_8 s_grid"%>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= f.text_area :keywords, size: "20x3", placeholder: t("personal_patent.keywords"), class: "s_grid_12 s_grid_h_2 s_grid"%>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= f.label :language, t("personal_patent.language"), :class => "s_grid s_grid_4" %>
|
||||||
|
<%= f.select :language, WritingPatent::LANGUAGE_TYPES,{} ,{:class => "s_grid s_grid_8"} %>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div column="true">
|
||||||
|
<div class="s_form">
|
||||||
|
<ul>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= f.text_area :note, size: "20x3", placeholder: t("personal_patent.note"), class: "s_grid_12 s_grid s_grid_h_5"%>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div column="true">
|
||||||
|
<div class="s_form">
|
||||||
|
<ul>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<table class="s_table">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th class="s_grid_2"><%= t("personal_patent.file")%></th>
|
||||||
|
<th class="s_grid_4"><%= t("personal_patent.file_name")%></th>
|
||||||
|
<th class="s_grid_4"><%= t("personal_patent.description") %></th>
|
||||||
|
<th class="s_grid_2"></th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tfoot>
|
||||||
|
<tr>
|
||||||
|
<td colspan="4">
|
||||||
|
<div id='add_plugin_file' class="info_input plugin_files_block s_action">
|
||||||
|
<%= hidden_field_tag 'plugin_file_field_count', @patent.writing_patent_files.count %>
|
||||||
|
<a class="add setting_btn thmc1 thmtxt w1 hh1 hp" href="#"><i class="icon-plus icon-white"></i> add</a>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tfoot>
|
||||||
|
<tbody>
|
||||||
|
<% @patent.writing_patent_files.each_with_index do |writing_patent_file, i| %>
|
||||||
|
<%= f.fields_for :writing_patent_files, writing_patent_file do |f| %>
|
||||||
|
<%= render :partial => 'form_file', :object => writing_patent_file, :locals => {:f => f, :i => i} %>
|
||||||
|
<% end %>
|
||||||
|
<% end %>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<script>
|
||||||
|
var get_html = function(old_id,new_id){
|
||||||
|
return ("<%= escape_javascript(add_attribute 'form_file', f, :writing_patent_files) %>").replace(old_id, new_id);
|
||||||
|
}
|
||||||
|
</script>
|
|
@ -0,0 +1,33 @@
|
||||||
|
<tr id="<%= "plugin_file_#{form_file.id}" if !form_file.new_record? %>" class="list_item">
|
||||||
|
<td>
|
||||||
|
<div>
|
||||||
|
<% if form_file.new_record? %>
|
||||||
|
<%= f.file_field :file, class: "s_grid_2" %>
|
||||||
|
<% end %>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<%= f.text_field :title, :class => 's_grid_4' %>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<%= f.fields_for :file_title_translations do |f| %>
|
||||||
|
<%= f.text_field locale,
|
||||||
|
class: 's_grid_4',
|
||||||
|
value: (form_file.file_title_translations[locale] rescue nil) %>
|
||||||
|
<% end %>
|
||||||
|
</td>
|
||||||
|
|
||||||
|
<td>
|
||||||
|
<span class="action">
|
||||||
|
<% if form_file.new_record? %>
|
||||||
|
<a class="delete"><i class="icon-remove"></i></a>
|
||||||
|
<% else %>
|
||||||
|
<%= f.hidden_field :id %>
|
||||||
|
<a class="remove_existing_record"><i class="icon-remove"></i></a>
|
||||||
|
<%= f.hidden_field :should_destroy, :value => nil, :class => 'should_destroy' %>
|
||||||
|
<% end %>
|
||||||
|
<%= form_file.file.file ? ( link_to '', form_file.file.url, {:class => 'icon-eye-open', :target => '_blank', :title => t(:view)} ) : '' %>
|
||||||
|
</span>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
|
@ -0,0 +1,3 @@
|
||||||
|
<%= form_for @patent, html: { multipart: true, "form-type"=>"ajax_form", "callback-method"=>"formCallback"}, url: panel_personal_patent_desktop_personal_patents_path(@patent) do |f| %>
|
||||||
|
<%= render partial: 'form', locals: {:f => f} %>
|
||||||
|
<%end%>
|
|
@ -0,0 +1,82 @@
|
||||||
|
<div class="toolbar hh1">
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1"><span class="icon-check"></span></div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul id="journal_selection_options">
|
||||||
|
<li><a class="hp hh1 admtxt" href="all" ajax-remote="false" callback-method="allnone">All</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="none" ajax-remote="false" callback-method="allnone">None</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1">More</div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Delete</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Tag</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1">Tag</div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">All</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Starred</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">MIT</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1">Status</div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">All</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Published</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Pending</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1">View</div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul id="journal_view_selection">
|
||||||
|
<li><%= link_to "Title", panel_personal_patent_desktop_personal_patents_path + "?view=patent_title", :class => "hp hh1 admtxt", "ajax-remote" => "get" %></li>
|
||||||
|
<li><%= link_to "File", panel_personal_patent_desktop_personal_patents_path + "?view=file", :class => "hp hh1 admtxt", "ajax-remote" => "get" %></li>
|
||||||
|
<li><%= link_to "Keywords", panel_personal_patent_desktop_personal_patents_path + "?view=keywords", :class => "hp hh1 admtxt", "ajax-remote" => "get" %></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1">Share</div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Full</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Abstract</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Friends</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Private</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Group</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1" id='ns'>New Share</div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul>
|
||||||
|
<li><a class="hp hh1 admtxt remote_url" href="<%= panel_personal_patent_desktop_personal_patents_path %>">Full</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Abstract</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Friends</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Private</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Group</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1"><span class="icon-question-sign"></span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="overview" page-name="journal_p_list" content-layout="datalist" base-width="300" per-column="<%= @per_column.to_s %>" pagination-var="view=<%= @view_by %>&page" >
|
||||||
|
<% @patents.each do |w| %>
|
||||||
|
<%= publication_record w, @view_by%>
|
||||||
|
<% end %>
|
||||||
|
</div>
|
|
@ -0,0 +1,3 @@
|
||||||
|
<%= form_for @patent, html: { multipart: true, "form-type"=>"ajax_form", "callback-method"=>"formCallback"}, url: panel_personal_patent_desktop_personal_patents_path do |f| %>
|
||||||
|
<%= render partial: 'form', locals: {:f => f} %>
|
||||||
|
<%end%>
|
|
@ -0,0 +1,35 @@
|
||||||
|
<%= stylesheet_link_tag "/assets/personal_patent/desktop/personal_patent" %>
|
||||||
|
<%= javascript_include_tag "personal_patent/desktop/personal_patent" %>
|
||||||
|
<div id="patent">
|
||||||
|
<div id="content">
|
||||||
|
<div id="header" class="hh2">
|
||||||
|
<div class="dtitle w2 hh2 hp">
|
||||||
|
<span class="thmtxth">Patents</span>
|
||||||
|
</div>
|
||||||
|
<div id="search_app" class="hfn w2 hh1 hp thmc3">
|
||||||
|
<input type="text" class="ini_input form" value="Search" id="searchbox" />
|
||||||
|
<input type="submit" class="ini_input submit thmc1" value="Submit"/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id="holder">
|
||||||
|
<div id="panel_l" class="ph">
|
||||||
|
<div class="s_menu sm_v" content-type="menu">
|
||||||
|
<ul id='setting_left_nav'>
|
||||||
|
<li><a href="<%= panel_personal_patent_desktop_personal_patents_path %>" callback-method="list" class="hh1 w2 hp active thmc1 thmtxt" load="true" onclick='return false;'>List</a></li>
|
||||||
|
<li><a href="<%= new_panel_personal_patent_desktop_personal_patent_path %>" callback-method="addpatent" class="admtxt hh1 w2 hp" onclick='return false;'>Add/Edit</a></li>
|
||||||
|
<!-- <li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Books</a></li>
|
||||||
|
<li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Co-Authors</a></li>
|
||||||
|
<li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Tags & Keywords</a></li>
|
||||||
|
<li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Analysis</a></li>
|
||||||
|
<li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Import</a></li>
|
||||||
|
<li><a href="" class="admtxt hh1 w2 hp" onclick='return false;'>Export</a></li> -->
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id="panel_r" container="true" class="ph pw admbg hp">
|
||||||
|
</div>
|
||||||
|
<div class="clear"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
|
@ -1,4 +1,54 @@
|
||||||
en:
|
en:
|
||||||
|
|
||||||
module_name:
|
module_name:
|
||||||
personal_patent: Patent
|
personal_patent: Patent
|
||||||
|
personal_patent:
|
||||||
|
patent_title : "Patent Title"
|
||||||
|
book_title : "Book Title"
|
||||||
|
extracted_chapters : "Extracted Chapters"
|
||||||
|
patent_no : "Patent Number"
|
||||||
|
patent_country : "Patent Country"
|
||||||
|
patent_category : "Patent Category"
|
||||||
|
publishers : "Publishers"
|
||||||
|
authors : "Authors"
|
||||||
|
tags : "Tags"
|
||||||
|
year : "Year"
|
||||||
|
language : "Language"
|
||||||
|
isbn : "ISSN(ISBN)"
|
||||||
|
vol_no : "Vol.No"
|
||||||
|
issue_no : "Issue.No"
|
||||||
|
form_to_start : "From"
|
||||||
|
form_to_end : "To"
|
||||||
|
total_pages : "Total Pages"
|
||||||
|
keywords : "Keywords"
|
||||||
|
abstract : "Abstract"
|
||||||
|
publication_date : "Date of Publication"
|
||||||
|
url : "Reference URL"
|
||||||
|
note : "Note"
|
||||||
|
level_type : "Level Type"
|
||||||
|
author_type : "Author Type"
|
||||||
|
from : "From"
|
||||||
|
to : "To"
|
||||||
|
file : "File"
|
||||||
|
file_name : "File name"
|
||||||
|
description : "File Description"
|
||||||
|
pages : "Pages"
|
||||||
|
book_paper_type : "Book Paper Type"
|
||||||
|
|
||||||
|
create_success : "Successfully Create"
|
||||||
|
update_success : "Successfully Update"
|
||||||
|
delete_success : "Successfully Delete"
|
||||||
|
add: "Add"
|
||||||
|
back: "Back"
|
||||||
|
delete: "Delete"
|
||||||
|
edit: "Edit"
|
||||||
|
nothing: "Nothing"
|
||||||
|
show: "Show"
|
||||||
|
sure?: "Are you sure?"
|
||||||
|
update: "Update"
|
||||||
|
yes_: "Yes"
|
||||||
|
no_: "No"
|
||||||
|
cancel : "Cancel"
|
||||||
|
save: "save"
|
||||||
|
hintText: "Type in a search term"
|
||||||
|
noResultsText: "No results"
|
||||||
|
searchingText: "Searching…"
|
||||||
|
|
|
@ -1,4 +1,54 @@
|
||||||
zh_tw:
|
zh_tw:
|
||||||
|
|
||||||
module_name:
|
module_name:
|
||||||
personal_patent: 專利
|
personal_patent: Patent
|
||||||
|
personal_patent:
|
||||||
|
patent_title : "Patent Title"
|
||||||
|
book_title : "期刊名稱"
|
||||||
|
extracted_chapters : "Extracted Chapters"
|
||||||
|
patent_no : "Patent Number"
|
||||||
|
patent_country : "Patent Country"
|
||||||
|
patent_category : "Patent Category"
|
||||||
|
publishers : "Publishers"
|
||||||
|
authors : "作者"
|
||||||
|
tags : "領域"
|
||||||
|
year : "年度"
|
||||||
|
language : "語言"
|
||||||
|
isbn : "ISSN(ISBN)"
|
||||||
|
vol_no : "卷數"
|
||||||
|
issue_no : "期數"
|
||||||
|
form_to_start : "起"
|
||||||
|
form_to_end : "訖"
|
||||||
|
total_pages : "總頁數"
|
||||||
|
keywords : "關鍵字"
|
||||||
|
abstract : "摘要"
|
||||||
|
publication_date : "發表日期"
|
||||||
|
url : "參考連結"
|
||||||
|
note : "記事"
|
||||||
|
level_type : "期刊類別"
|
||||||
|
author_type : "作者類別"
|
||||||
|
from : "起"
|
||||||
|
to : "訖"
|
||||||
|
file : "檔案"
|
||||||
|
file_name : "檔案名稱"
|
||||||
|
description : "描述"
|
||||||
|
pages : "Pages"
|
||||||
|
book_paper_type : "Book Paper Type"
|
||||||
|
|
||||||
|
create_success : "新增完成!!"
|
||||||
|
update_success : "更新完成!!"
|
||||||
|
delete_success : "刪除成功!!"
|
||||||
|
add: "新增"
|
||||||
|
back: "返回"
|
||||||
|
delete: "刪除"
|
||||||
|
edit: "編輯"
|
||||||
|
nothing: "無"
|
||||||
|
show: "顯示"
|
||||||
|
sure?: "您肯定嗎?"
|
||||||
|
update: "更新"
|
||||||
|
yes_: "是"
|
||||||
|
no_: "否"
|
||||||
|
cancel : "取消"
|
||||||
|
save: "儲存"
|
||||||
|
hintText: "請輸入搜尋關鍵字"
|
||||||
|
noResultsText: "沒有相關的比對結果"
|
||||||
|
searchingText: "搜尋中…"
|
||||||
|
|
|
@ -2,6 +2,10 @@ Rails.application.routes.draw do
|
||||||
|
|
||||||
namespace :panel do
|
namespace :panel do
|
||||||
namespace :personal_patent do
|
namespace :personal_patent do
|
||||||
|
namespace :desktop do
|
||||||
|
match "patent_window" => "personal_patents#patent_window"
|
||||||
|
resources :personal_patents
|
||||||
|
end
|
||||||
namespace :back_end do
|
namespace :back_end do
|
||||||
|
|
||||||
match 'writing_patent_setting' => "writing_patents#writing_patent_setting" ,:as => :writing_patent_setting
|
match 'writing_patent_setting' => "writing_patents#writing_patent_setting" ,:as => :writing_patent_setting
|
||||||
|
|
|
@ -0,0 +1,158 @@
|
||||||
|
orbitDesktop.prototype.initializePersonalProject = function(target,url,cache){ // this init journal papers
|
||||||
|
this.initializePersonalProject.formCallback = function(data){
|
||||||
|
if(data.success){
|
||||||
|
o.notify(data.msg,"success");
|
||||||
|
o.sub_menu_item($("div[content-type=menu] a").eq(0));
|
||||||
|
}else{
|
||||||
|
o.notify(data.msg,"alert");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
this.initializePersonalProject.list = function(){ // to open list part in journal papers page
|
||||||
|
var journalData;
|
||||||
|
var bindHandlers = function(){ // to bind handlers for list page
|
||||||
|
|
||||||
|
}
|
||||||
|
bindHandlers();
|
||||||
|
|
||||||
|
var bindSecondaryHandlers = function(){
|
||||||
|
$("#journal_p div#paper_list a.icon-check-empty").click(function(){
|
||||||
|
if($(this).hasClass("icon-check-empty")){
|
||||||
|
$(this).switchClass("icon-check-empty","icon-check",0);
|
||||||
|
} else if($(this) .hasClass("icon-check")) {
|
||||||
|
$(this).switchClass("icon-check","icon-check-empty",0);
|
||||||
|
} else if($(this).hasClass("icon-star")){
|
||||||
|
$(this).removeClass("icon-star").addClass("icon-star-empty");
|
||||||
|
} else if($(this).hasClass("icon-star-empty")){
|
||||||
|
$(this).removeClass("icon-star-empty").addClass("icon-star");
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.initializePersonalProject.projectDelete = function(data,dom){
|
||||||
|
var parent = dom.parent().parent();
|
||||||
|
if(data.success){
|
||||||
|
parent.hide("slide",function(){parent.remove();});
|
||||||
|
o.notify(data.msg,"success");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
this.initializePersonalProject.cancelproject = function(){
|
||||||
|
o.highlight_sub_menu_item(0);
|
||||||
|
}
|
||||||
|
|
||||||
|
this.initializePersonalProject.editproject = function(){
|
||||||
|
o.highlight_sub_menu_item(1);
|
||||||
|
var uploadFiles = function(){
|
||||||
|
$('#add_plugin_file a.add').click(function(){
|
||||||
|
var new_id = $(this).prev().attr('value');
|
||||||
|
var old_id = new RegExp("new_writing_journal_files", "g");
|
||||||
|
$(this).prev().attr('value', parseInt(new_id) + 1);
|
||||||
|
var x = get_html(old_id,new_id);
|
||||||
|
var newfield = $(x);
|
||||||
|
$(this).parents('table').append(newfield);
|
||||||
|
newfield.find('.action a.delete').click(function(){
|
||||||
|
newfield.remove();
|
||||||
|
});
|
||||||
|
return false;
|
||||||
|
});
|
||||||
|
$('.action a.remove_existing_record').click(function(){
|
||||||
|
$(this).next('.should_destroy').attr('value', 1);
|
||||||
|
$("tr#add_plugin_file_" + $(this).prev().attr('value')).hide();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
var preData = function(){
|
||||||
|
$("#writing_journal_author_tokens").select2('data', JSON.parse($("#writing_journal_author_tokens").attr('data-pre')));
|
||||||
|
}
|
||||||
|
uploadFiles();
|
||||||
|
// preData();
|
||||||
|
}
|
||||||
|
|
||||||
|
this.initializePersonalProject.addproject = function(){ // to open add pages in journal papers page
|
||||||
|
var uploadFiles = function(){
|
||||||
|
$('#add_plugin_file a.add').click(function(){
|
||||||
|
var new_id = $(this).prev().attr('value');
|
||||||
|
var old_id = new RegExp("new_writing_journal_files", "g");
|
||||||
|
$(this).prev().attr('value', parseInt(new_id) + 1);
|
||||||
|
var x = get_html(old_id,new_id);
|
||||||
|
var newfield = $(x);
|
||||||
|
$(this).parents('table').append(newfield);
|
||||||
|
newfield.find('.action a.delete').click(function(){
|
||||||
|
newfield.remove();
|
||||||
|
});
|
||||||
|
return false;
|
||||||
|
});
|
||||||
|
$('.action a.remove_existing_record').click(function(){
|
||||||
|
$(this).next('.should_destroy').attr('value', 1);
|
||||||
|
$("tr#add_plugin_file_" + $(this).prev().attr('value')).hide();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
// console.log("hi");
|
||||||
|
var bindHandlers = function(){
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
bindHandlers();
|
||||||
|
uploadFiles();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
this.initializePersonalProject.coAuthorformCallback = function(data){
|
||||||
|
if(data.success){
|
||||||
|
o.notify(data.msg,"success");
|
||||||
|
o.sub_menu_item($("div[content-type=menu] a").eq(3));
|
||||||
|
}else{
|
||||||
|
o.notify(data.msg,"alert");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.initializePersonalProject.coauthor = function(){ // to open add pages in coauthor page
|
||||||
|
var bindHandlers = function(){ // to bind handlers for add page
|
||||||
|
|
||||||
|
}
|
||||||
|
bindHandlers();
|
||||||
|
}
|
||||||
|
this.initializePersonalProject.coauthorRelationForm = function(data){
|
||||||
|
if(data.success){
|
||||||
|
o.notify(data.msg,"success");
|
||||||
|
$("#co_author_relation_table").html(data.newvalue);
|
||||||
|
}else{
|
||||||
|
o.notify(data.msg,"alert");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.initializePersonalProject.coauthorRelationEditForm = function(data){
|
||||||
|
if(data.success){
|
||||||
|
o.notify(data.msg,"success");
|
||||||
|
var x = o.layout_data.generate_layout_html(data.newvalue);
|
||||||
|
$("div[container=true] div.overview").html(x.markup);
|
||||||
|
}else{
|
||||||
|
o.notify(data.msg,"alert");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.initializePersonalProject.allnone = function(d,o){
|
||||||
|
switch(o.attr("href")){
|
||||||
|
case "all":
|
||||||
|
$("div.overview a.icon-check-empty").removeClass("icon-check-empty").addClass("icon-check");
|
||||||
|
break;
|
||||||
|
case "none":
|
||||||
|
$("div.overview a.icon-check").removeClass("icon-check").addClass("icon-check-empty");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.initializePersonalProject.allnone = function(d,o){
|
||||||
|
switch(o.attr("href")){
|
||||||
|
case "all":
|
||||||
|
$("div.overview a.icon-check-empty").removeClass("icon-check-empty").addClass("icon-check");
|
||||||
|
break;
|
||||||
|
case "none":
|
||||||
|
$("div.overview a.icon-check").removeClass("icon-check").addClass("icon-check-empty");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,115 @@
|
||||||
|
/* Books */
|
||||||
|
[page-name="books_list"] .list_t_item .inner {
|
||||||
|
padding-left: 30px; }
|
||||||
|
[page-name="books_list"] .list_item_action {
|
||||||
|
font-size: 12px;
|
||||||
|
float: left;
|
||||||
|
margin-left: -30px; }
|
||||||
|
[page-name="books_list"] .list_item_action a {
|
||||||
|
display: block;
|
||||||
|
width: 20px;
|
||||||
|
height: 20px;
|
||||||
|
line-height: 20px;
|
||||||
|
margin: 1px 1px 6px 1px; }
|
||||||
|
[page-name="books_list"] .list_item_action .icon-star-empty {
|
||||||
|
color: #999;
|
||||||
|
font-size: 20px; }
|
||||||
|
[page-name="books_list"] .list_item_action .icon-star {
|
||||||
|
color: #faa732;
|
||||||
|
font-size: 20px; }
|
||||||
|
[page-name="books_list"] .list_item_action .icon-check-empty {
|
||||||
|
color: #999;
|
||||||
|
font-size: 20px; }
|
||||||
|
[page-name="books_list"] .list_item_action .icon-check {
|
||||||
|
color: #333;
|
||||||
|
font-size: 20px; }
|
||||||
|
[page-name="books_list"] .file_view .list_t_des {
|
||||||
|
overflow: hidden; }
|
||||||
|
[page-name="books_list"] .file_view .file {
|
||||||
|
float: left;
|
||||||
|
width: 120px;
|
||||||
|
height: 50px;
|
||||||
|
padding: 6px;
|
||||||
|
margin: 1px;
|
||||||
|
position: relative;
|
||||||
|
-webkit-box-sizing: border-box;
|
||||||
|
/* webkit */
|
||||||
|
-khtml-box-sizing: border-box;
|
||||||
|
/* konqueror */
|
||||||
|
-moz-box-sizing: border-box;
|
||||||
|
/* firefox */
|
||||||
|
-ms-box-sizing: border-box;
|
||||||
|
/* ie */
|
||||||
|
box-sizing: border-box;
|
||||||
|
/* css3 */ }
|
||||||
|
[page-name="books_list"] .file_view .file:hover {
|
||||||
|
background-color: #f7f7f7; }
|
||||||
|
[page-name="books_list"] .file_view .file img {
|
||||||
|
width: 38px;
|
||||||
|
height: 38px;
|
||||||
|
position: absolute;
|
||||||
|
left: 6px;
|
||||||
|
top: 6px; }
|
||||||
|
[page-name="books_list"] .file_view .file .filetitle {
|
||||||
|
display: block;
|
||||||
|
width: 100%;
|
||||||
|
height: 38px;
|
||||||
|
padding-left: 40px;
|
||||||
|
overflow: hidden;
|
||||||
|
-webkit-box-sizing: border-box;
|
||||||
|
/* webkit */
|
||||||
|
-khtml-box-sizing: border-box;
|
||||||
|
/* konqueror */
|
||||||
|
-moz-box-sizing: border-box;
|
||||||
|
/* firefox */
|
||||||
|
-ms-box-sizing: border-box;
|
||||||
|
/* ie */
|
||||||
|
box-sizing: border-box;
|
||||||
|
/* css3 */ }
|
||||||
|
|
||||||
|
/* Books Books list */
|
||||||
|
[page-name="books_books"] .datalist_item .inner {
|
||||||
|
padding-left: 30px; }
|
||||||
|
[page-name="books_books"] .list_item_action {
|
||||||
|
font-size: 12px;
|
||||||
|
float: left;
|
||||||
|
margin-left: -30px; }
|
||||||
|
[page-name="books_books"] .list_item_action i {
|
||||||
|
color: #999;
|
||||||
|
font-size: 20px;
|
||||||
|
display: block;
|
||||||
|
width: 20px;
|
||||||
|
height: 20px;
|
||||||
|
line-height: 20px;
|
||||||
|
margin: 1px 1px 6px 1px; }
|
||||||
|
[page-name="books_books"] .list_t_desc {
|
||||||
|
font-family: Arial, sans-serif;
|
||||||
|
font-size: 12px;
|
||||||
|
color: #999; }
|
||||||
|
|
||||||
|
/* Books Co-Author */
|
||||||
|
[page-name="books_coauthor"] .list_t_item {
|
||||||
|
height: 110px; }
|
||||||
|
[page-name="books_coauthor"] .list_item_function a {
|
||||||
|
display: inline-block;
|
||||||
|
padding: 4px;
|
||||||
|
font-family: Arial, sans-serif;
|
||||||
|
font-size: 11px;
|
||||||
|
-webkit-text-size-adjust: none; }
|
||||||
|
[page-name="books_coauthor"] .info {
|
||||||
|
font-family: Arial, sans-serif; }
|
||||||
|
[page-name="books_coauthor"] .info li {
|
||||||
|
margin-bottom: 8px;
|
||||||
|
color: #999; }
|
||||||
|
[page-name="books_coauthor"] .info .name {
|
||||||
|
font-size: 18px;
|
||||||
|
line-height: 24px;
|
||||||
|
color: #333; }
|
||||||
|
|
||||||
|
/* Books Co-Author Relationship*/
|
||||||
|
[page-name="books_coauthor_relation"] .edit_co_author_relation {
|
||||||
|
/*margin-left: -10px;*/ }
|
||||||
|
[page-name="books_coauthor_relation"] .form_space {
|
||||||
|
margin-bottom: 10px;
|
||||||
|
font-size: 18px;
|
||||||
|
font-family: Arial, sans-serif; }
|
|
@ -0,0 +1,123 @@
|
||||||
|
@import "desktop-helper";
|
||||||
|
|
||||||
|
/* Books */
|
||||||
|
[page-name="books_list"] {
|
||||||
|
.list_t_item .inner { padding-left: 30px; }
|
||||||
|
.list_item_action {
|
||||||
|
font-size: 12px;
|
||||||
|
float: left;
|
||||||
|
margin-left: -30px;
|
||||||
|
|
||||||
|
a {
|
||||||
|
display: block;
|
||||||
|
width: 20px;
|
||||||
|
height: 20px;
|
||||||
|
line-height: 20px;
|
||||||
|
margin: 1px 1px 6px 1px;
|
||||||
|
}
|
||||||
|
.icon-star-empty { color: #999; font-size: 20px; }
|
||||||
|
.icon-star { color: #faa732; font-size: 20px; }
|
||||||
|
.icon-check-empty { color: #999; font-size: 20px; }
|
||||||
|
.icon-check { color: #333; font-size: 20px; }
|
||||||
|
}
|
||||||
|
|
||||||
|
.file_view {
|
||||||
|
.list_t_des {
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
.file {
|
||||||
|
float: left;
|
||||||
|
width: 120px;
|
||||||
|
height: 50px;
|
||||||
|
padding: 6px;
|
||||||
|
margin: 1px;
|
||||||
|
position: relative;
|
||||||
|
@include box-sizing;
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
background-color: lighten($gray, 10%);
|
||||||
|
}
|
||||||
|
img {
|
||||||
|
width: 38px;
|
||||||
|
height: 38px;
|
||||||
|
position: absolute;
|
||||||
|
left: 6px;
|
||||||
|
top: 6px;
|
||||||
|
}
|
||||||
|
.filetitle {
|
||||||
|
display: block;
|
||||||
|
width: 100%;
|
||||||
|
height: 38px;
|
||||||
|
padding-left: 40px;
|
||||||
|
overflow: hidden;
|
||||||
|
@include box-sizing;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Books Books list */
|
||||||
|
[page-name="books_books"] {
|
||||||
|
|
||||||
|
.datalist_item .inner {
|
||||||
|
padding-left: 30px;
|
||||||
|
}
|
||||||
|
.list_item_action {
|
||||||
|
font-size: 12px;
|
||||||
|
float: left;
|
||||||
|
margin-left: -30px;
|
||||||
|
}
|
||||||
|
.list_item_action i {
|
||||||
|
color: #999;
|
||||||
|
font-size: 20px;
|
||||||
|
display: block;
|
||||||
|
width: 20px;
|
||||||
|
height: 20px;
|
||||||
|
line-height: 20px;
|
||||||
|
margin: 1px 1px 6px 1px;
|
||||||
|
}
|
||||||
|
.list_t_desc {
|
||||||
|
font-family: Arial, sans-serif;
|
||||||
|
font-size: 12px;
|
||||||
|
color: #999;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Books Co-Author */
|
||||||
|
[page-name="books_coauthor"] {
|
||||||
|
.list_t_item {
|
||||||
|
height: 110px;
|
||||||
|
}
|
||||||
|
.list_item_function {}
|
||||||
|
.list_item_function a {
|
||||||
|
display: inline-block;
|
||||||
|
padding: 4px;
|
||||||
|
font-family: Arial, sans-serif;
|
||||||
|
font-size: 11px;
|
||||||
|
-webkit-text-size-adjust: none;
|
||||||
|
}
|
||||||
|
.info {
|
||||||
|
font-family: Arial, sans-serif;
|
||||||
|
}
|
||||||
|
.info li {
|
||||||
|
margin-bottom: 8px;
|
||||||
|
color: #999;
|
||||||
|
}
|
||||||
|
.info .name {
|
||||||
|
font-size: 18px;
|
||||||
|
line-height: 24px;
|
||||||
|
color: #333;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Books Co-Author Relationship*/
|
||||||
|
[page-name="books_coauthor_relation"]{
|
||||||
|
.edit_co_author_relation {
|
||||||
|
/*margin-left: -10px;*/
|
||||||
|
}
|
||||||
|
.form_space {
|
||||||
|
margin-bottom: 10px;
|
||||||
|
font-size: 18px;
|
||||||
|
font-family: Arial, sans-serif;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,71 @@
|
||||||
|
class Panel::PersonalProject::Desktop::PersonalProjectsController < ApplicationController
|
||||||
|
|
||||||
|
def index
|
||||||
|
@projects = Project.where(create_user_id: current_user.id)
|
||||||
|
@view_by = params[:view]
|
||||||
|
page = params[:page]
|
||||||
|
page ||= 1
|
||||||
|
|
||||||
|
@per_column = 5
|
||||||
|
|
||||||
|
case @view_by
|
||||||
|
when "abstract"
|
||||||
|
@per_column = 1
|
||||||
|
when "file"
|
||||||
|
@per_column = 2
|
||||||
|
end
|
||||||
|
|
||||||
|
if @view_by.nil?
|
||||||
|
@view_by = " "
|
||||||
|
@projects = @projects.asc(:paper_title)
|
||||||
|
else
|
||||||
|
@projects = @projects.asc(@view_by).asc(:paper_title)
|
||||||
|
end
|
||||||
|
@projects = @projects.page(page).per(50)
|
||||||
|
respond_to do |format|
|
||||||
|
format.html { render :layout => false}
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def new
|
||||||
|
@project = Project.new
|
||||||
|
render :layout => false
|
||||||
|
end
|
||||||
|
|
||||||
|
def create
|
||||||
|
params[:project][:create_user_id] = current_user.id
|
||||||
|
@project = Project.new(params[:project])
|
||||||
|
if @project.save
|
||||||
|
render json: {success: true, msg: t('create_success')}.to_json
|
||||||
|
else
|
||||||
|
error_msg = @project.errors.full_messages.join("<br />")
|
||||||
|
render json: {success: false, msg: error_msg}.to_json
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def edit
|
||||||
|
@project = Project.find(params[:id])
|
||||||
|
render :layout => false
|
||||||
|
end
|
||||||
|
|
||||||
|
def update
|
||||||
|
params[:project][:create_user_id] = current_user.id
|
||||||
|
@project = Project.new(params[:project])
|
||||||
|
if @project.update_attributes(params[:project])
|
||||||
|
render json: {success: true, msg: t('create_success')}.to_json
|
||||||
|
else
|
||||||
|
error_msg = @project.errors.full_messages.join("<br />")
|
||||||
|
render json: {success: false, msg: error_msg}.to_json
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def destroy
|
||||||
|
@personal_book = Project.find(params[:id])
|
||||||
|
@personal_book.destroy
|
||||||
|
render :json => {success: true, msg: t('delete_success')}
|
||||||
|
end
|
||||||
|
|
||||||
|
def project_window
|
||||||
|
render :layout => false
|
||||||
|
end
|
||||||
|
end
|
|
@ -0,0 +1,96 @@
|
||||||
|
module Panel::PersonalProject::Desktop::PersonalProjectsHelper
|
||||||
|
def publication_record publication, view
|
||||||
|
content_tag :li,
|
||||||
|
"item" => "true",
|
||||||
|
:class => "list_t_item" do
|
||||||
|
marker + \
|
||||||
|
content(publication, view) + \
|
||||||
|
edit_or_delete(publication)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def marker
|
||||||
|
content_tag :div,
|
||||||
|
:class => "list_item_action" do
|
||||||
|
content_tag(:a, "",:href=>"",
|
||||||
|
:class => "icon-check-empty",
|
||||||
|
"toggle-onclick"=>"icon-check-empty icon-check",
|
||||||
|
"ajax-remote"=>"false") + \
|
||||||
|
content_tag(:a, "",:href=>"",
|
||||||
|
:class => "icon-star-empty",
|
||||||
|
"toggle-onclick"=>"icon-star-empty icon-star",
|
||||||
|
"ajax-remote"=>"false")
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def content publication, view
|
||||||
|
case view
|
||||||
|
when "project_title"
|
||||||
|
des = content_tag(:div, publication.project_title,
|
||||||
|
:class => "list_t_des")
|
||||||
|
when "job_title"
|
||||||
|
des = content_tag(:div, publication.job_title,
|
||||||
|
:class => "list_t_des")
|
||||||
|
when "keywords"
|
||||||
|
des = content_tag(:div, publication.keywords,
|
||||||
|
:class => "list_t_des")
|
||||||
|
when "file"
|
||||||
|
des = content_tag(:div, link_publication_file(publication),
|
||||||
|
:class => "list_t_des")
|
||||||
|
else
|
||||||
|
end
|
||||||
|
|
||||||
|
content_tag(:div, publication.project_title,
|
||||||
|
:class => "list_t_title") + des
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
def edit_or_delete publication
|
||||||
|
content_tag :div,
|
||||||
|
:class => "list_item_function" do
|
||||||
|
content_tag(:a, t("edit"),
|
||||||
|
:class => "journal_paper_edit admbg2 admtxt",
|
||||||
|
:href => edit_panel_personal_project_desktop_personal_project_path(publication),
|
||||||
|
"callback-method" => "editproject",
|
||||||
|
"ajax-remote" => "get") + \
|
||||||
|
content_tag(:a, t(:delete_),
|
||||||
|
"ajax-remote" => "delete",
|
||||||
|
"confirm-message" => t("sure?"),
|
||||||
|
"callback-method" => "projectDelete",
|
||||||
|
:class => "journal_paper_delete admbg2 admtxt",
|
||||||
|
:href => panel_personal_project_desktop_personal_project_path(publication))
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def link_publication_file publication
|
||||||
|
publication.project_files.map{|file|
|
||||||
|
link_to(image_tag(check_file_type(file.file.url)) + \
|
||||||
|
content_tag(:span, file.title, :class => "filetitle"),
|
||||||
|
file.file.url,
|
||||||
|
:class => "file",
|
||||||
|
"target" => "_blank")
|
||||||
|
}.inject(:+)
|
||||||
|
end
|
||||||
|
|
||||||
|
def check_file_type file
|
||||||
|
if not file.nil?
|
||||||
|
file_type = MIME::Types.type_for(file).first.to_s.split("/")[1]
|
||||||
|
file_type = "/assets/ft-icons/#{file_type}/#{file_type}-48_32.png"
|
||||||
|
else
|
||||||
|
file_type = ""
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def generate_authors_name ids
|
||||||
|
author_name = ids.map{|m|
|
||||||
|
if m == "0"
|
||||||
|
#{:id => 0, :text => current_user.name, :email => current_user.email }
|
||||||
|
{:id => 0, :text => current_user.name }
|
||||||
|
else
|
||||||
|
#{:id => m, :text => ConferenceCoAuthor.find(m).co_author, :email => ConferenceCoAuthor.find(m).email}
|
||||||
|
{:id => m, :text => ConferenceCoAuthor.find(m).co_author}
|
||||||
|
end
|
||||||
|
}
|
||||||
|
author_name.to_json
|
||||||
|
end
|
||||||
|
end
|
|
@ -0,0 +1,155 @@
|
||||||
|
<div class="toolbar hh1">
|
||||||
|
<div class="fn_g hp">
|
||||||
|
|
||||||
|
<%= f.submit t("save"), name: "commit", class: "fn_btn ini_input hp hh1 thmc2 thmtxt" %>
|
||||||
|
<% if not @project.new_record? %>
|
||||||
|
<%= submit_tag t("cancel"), :type => "button", "callback-method"=>"cancelproject", "ajax-remote" => "get", :href => panel_personal_project_desktop_personal_projects_path, class: "fn_btn ini_input hp hh1 admbg2 admtxt" %>
|
||||||
|
|
||||||
|
<% end %>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1">Share</div>
|
||||||
|
<div class="admbg sdm_o">
|
||||||
|
<ul>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Full</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Abstract</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Friends</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Private</a></li>
|
||||||
|
<li><a class="hp hh1 admtxt" href="">Group</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="hh1 hp sdm">
|
||||||
|
<div class="sdm_t hh1"><span class="icon-question-sign"></span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="overview" content-layout="column" base-width="420">
|
||||||
|
<div column="true">
|
||||||
|
<div class="s_form">
|
||||||
|
<ul>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= f.fields_for :project_title_translations do |f| %>
|
||||||
|
<%= f.text_field locale,
|
||||||
|
size: "20",
|
||||||
|
placeholder: t("personal_project.project_title"),
|
||||||
|
class: "s_grid_12 s_grid",
|
||||||
|
value: (@project.project_title_translations[locale.to_s] rescue nil) %>
|
||||||
|
<% end %>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= f.fields_for :job_title_translations do |f| %>
|
||||||
|
<%= f.text_field locale,
|
||||||
|
size: "20",
|
||||||
|
placeholder: t("personal_project.job_title"),
|
||||||
|
class: "s_grid_12 s_grid",
|
||||||
|
value: (@project.job_title_translations[locale.to_s] rescue nil) %>
|
||||||
|
<% end %>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= f.fields_for :participator_translations do |f| %>
|
||||||
|
<%= f.text_field locale,
|
||||||
|
size: "20",
|
||||||
|
placeholder: t("personal_project.participator"),
|
||||||
|
class: "s_grid_12 s_grid",
|
||||||
|
value: (@project.participator_translations[locale.to_s] rescue nil) %>
|
||||||
|
<% end %>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= f.fields_for :unit_translations do |f| %>
|
||||||
|
<%= f.text_field locale,
|
||||||
|
size: "20",
|
||||||
|
placeholder: t("personal_project.unit"),
|
||||||
|
class: "s_grid_12 s_grid",
|
||||||
|
value: (@project.unit_translations[locale.to_s] rescue nil) %>
|
||||||
|
<% end %>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= label_tag("", t("personal_project.start_date"), class: "s_grid_4 s_grid") %>
|
||||||
|
<%= f.date_select :period_start_date, {:use_month_numbers => true, :start_year => Time.now.year, :end_year => 1930, :order => [:year] }, {:class => 's_grid_4 s_grid'} %>
|
||||||
|
<%= f.date_select :period_start_date, {:use_month_numbers => true, :order => [:month, :day] }, {:class => 's_grid_2 s_grid'} %>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= label_tag("", t("personal_project.end_date"), class: "s_grid_4 s_grid") %>
|
||||||
|
<%= f.date_select :period_end_date, {:use_month_numbers => true, :start_year => Time.now.year, :end_year => 1930, :order => [:year] }, {:class => 's_grid_4 s_grid'} %>
|
||||||
|
<%= f.date_select :period_end_date, {:use_month_numbers => true, :order => [:month, :day] }, {:class => 's_grid_2 s_grid'} %>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= label_tag("", t("personal_project.year"), class: "s_grid_4 s_grid") %>
|
||||||
|
<%= select_year((@project.year ? @project.year.to_i : DateTime.now.year), {:start_year => DateTime.now.year, :end_year => 1930}, {:name => 'lab[year]',:class => 's_grid_4 s_grid'} ) %>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= label_tag("", t("personal_project.project_category"), class: "s_grid_4 s_grid") %>
|
||||||
|
<%= f.select :project_category_id, ProjectCategory.all.collect {|t| [ t.title, t.id ]}, {:class => "s_grid s_grid_8"} %>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= label_tag("", t("personal_project.url"), class: "s_grid_4 s_grid") %><%= f.text_field :url, size: "20", class: "s_grid_8 s_grid"%>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div column="true">
|
||||||
|
<div class="s_form">
|
||||||
|
<ul>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= f.text_area :keywords, size: "20x3", placeholder: t("personal_project.keywords"), class: "s_grid_12 s_grid_h_2 s_grid"%>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= f.label :language, t("personal_project.language"), :class => "s_grid s_grid_4" %>
|
||||||
|
<%= f.select :language, Project::LANGUAGE_TYPES,{} ,{:class => "s_grid s_grid_8"} %>
|
||||||
|
</li>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= f.text_area :note, size: "20x3", placeholder: t("personal_project.note"), class: "s_grid_12 s_grid s_grid_h_7"%>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div column="true">
|
||||||
|
<div class="s_form">
|
||||||
|
<ul>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<%= f.text_area :abstract, size: "20x22", placeholder: t("personal_project.abstract"), class: "s_grid_12 s_grid s_grid_h_10"%>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div column="true">
|
||||||
|
<div class="s_form">
|
||||||
|
<ul>
|
||||||
|
<li class="s_grid_row">
|
||||||
|
<table class="s_table">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th class="s_grid_2"><%= t("personal_project.file")%></th>
|
||||||
|
<th class="s_grid_4"><%= t("personal_project.file_name")%></th>
|
||||||
|
<th class="s_grid_4"><%= t("personal_project.description") %></th>
|
||||||
|
<th class="s_grid_2"></th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tfoot>
|
||||||
|
<tr>
|
||||||
|
<td colspan="4">
|
||||||
|
<div id='add_plugin_file' class="info_input plugin_files_block s_action">
|
||||||
|
<%= hidden_field_tag 'plugin_file_field_count', @project.project_files.count %>
|
||||||
|
<a class="add setting_btn thmc1 thmtxt w1 hh1 hp" href="#"><i class="icon-plus icon-white"></i> add</a>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tfoot>
|
||||||
|
<tbody>
|
||||||
|
<% @project.project_files.each_with_index do |project_file, i| %>
|
||||||
|
<%= f.fields_for :project_files, project_file do |f| %>
|
||||||
|
<%= render :partial => 'form_file', :object => project_file, :locals => {:f => f, :i => i} %>
|
||||||
|
<% end %>
|
||||||
|
<% end %>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<script>
|
||||||
|
var get_html = function(old_id,new_id){
|
||||||
|
return ("<%= escape_javascript(add_attribute 'form_file', f, :project_files) %>").replace(old_id, new_id);
|
||||||
|
}
|
||||||
|
</script>
|
|
@ -0,0 +1,33 @@
|
||||||
|
<tr id="<%= "plugin_file_#{form_file.id}" if !form_file.new_record? %>" class="list_item">
|
||||||
|
<td>
|
||||||
|
<div>
|
||||||
|
<% if form_file.new_record? %>
|
||||||
|
<%= f.file_field :file, class: "s_grid_2" %>
|
||||||
|
<% end %>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<%= f.text_field :title, :class => 's_grid_4' %>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<%= f.fields_for :file_title_translations do |f| %>
|
||||||
|
<%= f.text_field locale,
|
||||||
|
class: 's_grid_4',
|
||||||
|
value: (form_file.file_title_translations[locale] rescue nil) %>
|
||||||
|
<% end %>
|
||||||
|
</td>
|
||||||
|
|
||||||
|
<td>
|
||||||
|
<span class="action">
|
||||||
|
<% if form_file.new_record? %>
|
||||||
|
<a class="delete"><i class="icon-remove"></i></a>
|
||||||
|
<% else %>
|
||||||
|
<%= f.hidden_field :id %>
|
||||||
|
<a class="remove_existing_record"><i class="icon-remove"></i></a>
|
||||||
|
<%= f.hidden_field :should_destroy, :value => nil, :class => 'should_destroy' %>
|
||||||
|
<% end %>
|
||||||
|
<%= form_file.file.file ? ( link_to '', form_file.file.url, {:class => 'icon-eye-open', :target => '_blank', :title => t(:view)} ) : '' %>
|
||||||
|
</span>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue