Merge branch 'desktop' into desktop_work
* desktop: tinyscrollbar pagination fixed insert and remove columns Major tinyscrollbar update modify translation for journal_co_author_relation button modify nil of email string and sort remove redundant space of co_author sample data make index of list can be hightline list when click cancel button fixed author sample data generation and model method add author filter for journal and fix some bug have done conference author filter, journal haven't been done, yet
This commit is contained in:
commit
470dbea22d
1
Gemfile
1
Gemfile
|
@ -13,6 +13,7 @@ gem 'exception_notification' # Send error trace
|
|||
gem 'execjs'
|
||||
gem 'jquery-rails', '2.1.4'
|
||||
gem 'jquery-ui-rails'
|
||||
gem "select2-rails"
|
||||
gem 'kaminari', :git => 'git://github.com/amatsuda/kaminari.git'
|
||||
|
||||
# gem "memcached", "~> 1.4.3"
|
||||
|
|
13
Gemfile.lock
13
Gemfile.lock
|
@ -141,6 +141,7 @@ GEM
|
|||
jquery-rails
|
||||
railties (>= 3.1.0)
|
||||
json (1.7.7)
|
||||
libv8 (3.11.8.13)
|
||||
mail (2.4.4)
|
||||
i18n (>= 0.4.0)
|
||||
mime-types (~> 1.16)
|
||||
|
@ -224,6 +225,7 @@ GEM
|
|||
rdoc (~> 3.4)
|
||||
thor (>= 0.14.6, < 2.0)
|
||||
rake (10.0.3)
|
||||
rb-readline (0.4.2)
|
||||
rdoc (3.12.1)
|
||||
json (~> 1.4)
|
||||
redis (3.0.2)
|
||||
|
@ -233,6 +235,7 @@ GEM
|
|||
chinese_pinyin (>= 0.3.0)
|
||||
redis (>= 2.1.1)
|
||||
redis-namespace (>= 1.0.2)
|
||||
ref (1.0.2)
|
||||
resque (1.23.0)
|
||||
multi_json (~> 1.0)
|
||||
redis-namespace (~> 1.0)
|
||||
|
@ -275,6 +278,9 @@ GEM
|
|||
railties (~> 3.2.0)
|
||||
sass (>= 3.1.10)
|
||||
tilt (~> 1.3)
|
||||
select2-rails (3.3.0)
|
||||
sass-rails (~> 3.2)
|
||||
thor (~> 0.14)
|
||||
selenium-webdriver (2.30.0)
|
||||
childprocess (>= 0.2.5)
|
||||
multi_json (~> 1.0)
|
||||
|
@ -313,6 +319,9 @@ GEM
|
|||
sunspot (= 1.3.3)
|
||||
sunspot_solr (1.3.3)
|
||||
terminal-table (1.4.5)
|
||||
therubyracer (0.11.4)
|
||||
libv8 (~> 3.11.8.12)
|
||||
ref
|
||||
thor (0.17.0)
|
||||
tilt (1.3.3)
|
||||
tinymce-rails (3.5.8)
|
||||
|
@ -357,6 +366,7 @@ DEPENDENCIES
|
|||
jquery-rails (= 2.1.4)
|
||||
jquery-ui-rails
|
||||
kaminari!
|
||||
libv8 (~> 3.11.8)
|
||||
mime-types
|
||||
mini_magick
|
||||
mongo_session_store-rails3 (= 3.0.6)
|
||||
|
@ -373,6 +383,7 @@ DEPENDENCIES
|
|||
radius
|
||||
rails (~> 3.2.9)
|
||||
rake
|
||||
rb-readline
|
||||
redis (>= 2.1.1)
|
||||
redis-namespace
|
||||
redis-search
|
||||
|
@ -384,6 +395,7 @@ DEPENDENCIES
|
|||
rspec-rails (~> 2.0)
|
||||
rubyzip
|
||||
sass-rails
|
||||
select2-rails
|
||||
shoulda-matchers
|
||||
simplecov
|
||||
sinatra
|
||||
|
@ -393,6 +405,7 @@ DEPENDENCIES
|
|||
sunspot-rails-tester
|
||||
sunspot_mongo
|
||||
sunspot_solr
|
||||
therubyracer
|
||||
tinymce-rails
|
||||
uglifier
|
||||
watchr
|
||||
|
|
|
@ -16,4 +16,4 @@
|
|||
//= require orbitdesktop
|
||||
//= require jquery.gridster
|
||||
//= require desktop/books_pages
|
||||
//= require jquery.tokeninput
|
||||
//= require select2
|
||||
|
|
|
@ -15,4 +15,5 @@
|
|||
*= require desktop/desktop-media
|
||||
*= require desktop/desktop-timeline
|
||||
*= require orbit-bar
|
||||
*/
|
||||
*= require select2
|
||||
*/
|
||||
|
|
|
@ -1,116 +1,230 @@
|
|||
orbitDesktop.prototype.initializeConferencePapers = function(target,url,cache){ // this init conference papers
|
||||
this.initializeConferencePapers.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.initializeConferencePapers.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.initializeConferencePapers.list = function(){ // to open list part in conference papers page
|
||||
var conferenceData;
|
||||
var bindHandlers = function(){ // to bind handlers for list page
|
||||
o.simple_drop_down();
|
||||
}
|
||||
|
||||
this.initializeConferencePapers.list = function(){ // to open list part in conference papers page
|
||||
var conferenceData;
|
||||
var bindHandlers = function(){ // to bind handlers for list page
|
||||
o.simple_drop_down();
|
||||
}
|
||||
|
||||
var bindSecondaryHandlers = function(){
|
||||
$("#conference_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.initializeConferencePapers.paperDelete = function(data,dom){
|
||||
var parent = dom.parent().parent();
|
||||
if(data.success){
|
||||
parent.hide("slide",function(){parent.remove();});
|
||||
o.notify(data.msg,"success");
|
||||
var bindSecondaryHandlers = function(){
|
||||
$("#conference_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.initializeConferencePapers.editpaper = function(){
|
||||
o.highlight_sub_menu_item(1)
|
||||
}
|
||||
this.initializeConferencePapers.paperDelete = function(data,dom){
|
||||
var parent = dom.parent().parent();
|
||||
if(data.success){
|
||||
parent.hide("slide",function(){parent.remove();});
|
||||
o.notify(data.msg,"success");
|
||||
}
|
||||
}
|
||||
|
||||
this.initializeConferencePapers.addpaper = function(){ // to open add pages in conference papers page
|
||||
var bindHandlers = function(){ // to bind handlers for add page
|
||||
o.simple_drop_down();
|
||||
$('#add_plugin_file a.add').click(function(){
|
||||
var new_id = $(this).prev().attr('value');
|
||||
var old_id = new RegExp("new_writing_conference_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;
|
||||
this.initializeConferencePapers.cancelpaper = function(){
|
||||
o.highlight_sub_menu_item(0);
|
||||
}
|
||||
|
||||
this.initializeConferencePapers.editpaper = 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_conference_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();
|
||||
});
|
||||
|
||||
$('.action a.remove_existing_record').click(function(){
|
||||
$(this).next('.should_destroy').attr('value', 1);
|
||||
$("tr#add_plugin_file_" + $(this).prev().attr('value')).hide();
|
||||
});
|
||||
}
|
||||
bindHandlers();
|
||||
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();
|
||||
});
|
||||
}
|
||||
|
||||
this.initializeConferencePapers.conference = function(){ // to open add pages in conference papers page
|
||||
var bindHandlers = function(){ // to bind handlers for add page
|
||||
o.simple_drop_down();
|
||||
}
|
||||
bindHandlers();
|
||||
var tokesplits = function(){
|
||||
$("#writing_conference_author_tokens").select2({
|
||||
multiple: true,
|
||||
minimumInputLength: 1,
|
||||
width: "300px;",
|
||||
formatResult: function movieFormatResult(coAuthor) {
|
||||
var markup = "";
|
||||
if (coAuthor.text !== undefined && coAuthor.email !== undefined) {
|
||||
if(!coAuthor.email){
|
||||
markup += coAuthor.text + " -- none email";
|
||||
} else {
|
||||
markup += coAuthor.text + " -- " + coAuthor.email;
|
||||
}
|
||||
}else if (coAuthor.email !== undefined) {
|
||||
markup += coAuthor.text;
|
||||
}
|
||||
return markup;
|
||||
},
|
||||
ajax: {
|
||||
url: "/panel/personal_conference/desktop/conference_pages/new.json",
|
||||
dataType: 'json',
|
||||
quietMillis: 100,
|
||||
tokenSeparators: [","],
|
||||
data: function (search, page) {
|
||||
return {q: search};
|
||||
},
|
||||
results: function (data, page) {
|
||||
return {results: data.results};
|
||||
}
|
||||
},
|
||||
});
|
||||
|
||||
$("#writing_conference_author_tokens").select2("container").find("ul.select2-choices").sortable({
|
||||
containment: 'parent',
|
||||
start: function() { $("#writing_conference_author_tokens").select2("onSortStart"); },
|
||||
update: function() { $("#writing_conference_author_tokens").select2("onSortEnd"); }
|
||||
});
|
||||
}
|
||||
|
||||
this.initializeConferencePapers.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");
|
||||
}
|
||||
var preData = function(){
|
||||
$("#writing_conference_author_tokens").select2('data', JSON.parse($("#writing_conference_author_tokens").attr('data-pre')));
|
||||
}
|
||||
|
||||
uploadFiles();
|
||||
tokesplits();
|
||||
preData();
|
||||
}
|
||||
|
||||
this.initializeConferencePapers.addpaper = function(){ // to open add pages in conference 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_conference_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(){
|
||||
o.simple_drop_down();
|
||||
}
|
||||
|
||||
var tokesplits = function(){
|
||||
$("#writing_conference_author_tokens").select2({
|
||||
multiple: true,
|
||||
minimumInputLength: 1,
|
||||
width: "300px;",
|
||||
formatResult: function movieFormatResult(coAuthor) {
|
||||
var markup = "";
|
||||
if (coAuthor.text !== undefined && coAuthor.email !== undefined) {
|
||||
if(!coAuthor.email){
|
||||
markup += coAuthor.text + " -- none email";
|
||||
} else {
|
||||
markup += coAuthor.text + " -- " + coAuthor.email;
|
||||
}
|
||||
}else if (coAuthor.email !== undefined) {
|
||||
markup += coAuthor.text;
|
||||
}
|
||||
return markup;
|
||||
},
|
||||
ajax: {
|
||||
url: "/panel/personal_conference/desktop/conference_pages/new.json",
|
||||
dataType: 'json',
|
||||
quietMillis: 100,
|
||||
tokenSeparators: [","],
|
||||
data: function (search, page) {
|
||||
return {q: search};
|
||||
},
|
||||
results: function (data, page) {
|
||||
return {results: data.results};
|
||||
}
|
||||
},
|
||||
});
|
||||
|
||||
$("#writing_conference_author_tokens").select2("container").find("ul.select2-choices").sortable({
|
||||
containment: 'parent',
|
||||
start: function() { $("#writing_conference_author_tokens").select2("onSortStart"); },
|
||||
update: function() { $("#writing_conference_author_tokens").select2("onSortEnd"); }
|
||||
});
|
||||
}
|
||||
|
||||
bindHandlers();
|
||||
uploadFiles();
|
||||
tokesplits();
|
||||
}
|
||||
|
||||
this.initializeConferencePapers.conference = function(){ // to open add pages in conference papers page
|
||||
var bindHandlers = function(){ // to bind handlers for add page
|
||||
o.simple_drop_down();
|
||||
}
|
||||
bindHandlers();
|
||||
}
|
||||
|
||||
this.initializeConferencePapers.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.initializeConferencePapers.coauthor = function(){ // to open add pages in coauthor page
|
||||
var bindHandlers = function(){ // to bind handlers for add page
|
||||
o.simple_drop_down();
|
||||
}
|
||||
this.initializeConferencePapers.coauthor = function(){ // to open add pages in coauthor page
|
||||
var bindHandlers = function(){ // to bind handlers for add page
|
||||
o.simple_drop_down();
|
||||
}
|
||||
bindHandlers();
|
||||
}
|
||||
this.initializeConferencePapers.coauthorRelationForm = function(data){
|
||||
if(data.success){
|
||||
o.notify(data.msg,"success");
|
||||
$("#co_author_relation_table").html(data.newvalue);
|
||||
}else{
|
||||
o.notify(data.msg,"alert");
|
||||
o.notify(data.msg,"success");
|
||||
$("#co_author_relation_table").html(data.newvalue);
|
||||
}else{
|
||||
o.notify(data.msg,"alert");
|
||||
}
|
||||
}
|
||||
this.initializeConferencePapers.coauthorRelationEditForm = function(data){
|
||||
if(data.success){
|
||||
o.notify(data.msg,"success");
|
||||
$("#co_author_relation_table").html(data.newvalue);
|
||||
}else{
|
||||
o.notify(data.msg,"alert");
|
||||
o.notify(data.msg,"success");
|
||||
$("#co_author_relation_table").html(data.newvalue);
|
||||
}else{
|
||||
o.notify(data.msg,"alert");
|
||||
}
|
||||
}
|
||||
this.initializeConferencePapers.allnone = function(d,o){
|
||||
this.initializeConferencePapers.allnone = function(d,o){
|
||||
switch(o.attr("href")){
|
||||
case "all":
|
||||
$("div.overview a.icon-check-empty").removeClass("icon-check-empty").addClass("icon-check");
|
||||
break;
|
||||
break;
|
||||
case "none":
|
||||
$("div.overview a.icon-check").removeClass("icon-check").addClass("icon-check-empty");
|
||||
break;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
|
|
|
@ -28,7 +28,7 @@ class Panel::PersonalConference::Desktop::ConferenceCoAuthorRelationsController
|
|||
|
||||
if @conference_co_author_relation.save
|
||||
newv = render_to_string partial: "show_form", object: @conference_co_author_relations
|
||||
render json: {success: true, msg: t("create_success") , newvalue: newv}.to_json
|
||||
render json: {success: true, msg: t('create_success') , newvalue: newv}.to_json
|
||||
else
|
||||
error_msg = @conference_co_author_relation.errors.full_messages.join("<br />")
|
||||
render json: {success: false, msg: error_msg}.to_json
|
||||
|
@ -40,7 +40,7 @@ class Panel::PersonalConference::Desktop::ConferenceCoAuthorRelationsController
|
|||
if @conference_co_author_relation.update_attributes(params[:conference_co_author_relation])
|
||||
@conference_co_author_relations = ConferenceCoAuthorRelation.all
|
||||
newv = render_to_string partial: "show_form", object: @conference_co_author_relations
|
||||
render json: {success: true, msg: t("update_success"), newvalue: newv}.to_json
|
||||
render json: {success: true, msg: t('update_success'), newvalue: newv}.to_json
|
||||
else
|
||||
error_msg = @conference_co_author.errors.full_messages.join("<br />")
|
||||
render json: {success: false, msg: error_msg}.to_json
|
||||
|
|
|
@ -32,19 +32,20 @@ class Panel::PersonalConference::Desktop::ConferencePagesController < Applicatio
|
|||
WritingConference.where(create_user_id: current_user.id).map{|j|j.conference_title}.uniq
|
||||
|
||||
if (not params[:q].nil?) and (current_user.name.include?params[:q])
|
||||
@user = [{ :id => 0, :name => current_user.name}] # self account name
|
||||
@user = [{ :id => 0, :text => current_user.name, :email => current_user.email}] # self account name
|
||||
else
|
||||
@user = []
|
||||
end
|
||||
|
||||
@co_authors = ConferenceCoAuthor.where(name_id: current_user.id, :co_author => /#{params[:q]}/)
|
||||
@co_authors = [{ :id => params[:q], :name => params[:q] }] + # search string
|
||||
@user + # self account name
|
||||
@co_authors.map{|m| { :id => m.id, :name => m.co_author } } # match pattern
|
||||
@co_authors = ConferenceCoAuthor.where(name_id: current_user.id, :co_author => /#{params[:q]}/).asc(:co_author)
|
||||
# search string + self account name + match pattern
|
||||
@co_authors = [{ :id => params[:q], :text => params[:q], :email => "#{t("add")} #{t("author")}" }] +
|
||||
@user +
|
||||
@co_authors.map{|m| { :id => m.id, :text => m.co_author, :email => m.email } }
|
||||
|
||||
respond_to do |format|
|
||||
format.html { render :layout => false}
|
||||
format.json { render :json => @co_authors.to_json }
|
||||
format.json { render :json => {:results => @co_authors}.to_json }
|
||||
end
|
||||
end
|
||||
|
||||
|
|
|
@ -83,12 +83,13 @@ module Panel::PersonalConference::Desktop::ConferencePagesHelper
|
|||
def generate_authors_name ids
|
||||
author_name = ids.map{|m|
|
||||
if m == "0"
|
||||
{:id => 0, :name => current_user.name}
|
||||
#{:id => 0, :text => current_user.name, :email => current_user.email }
|
||||
{:id => 0, :text => current_user.name }
|
||||
else
|
||||
{:id => m, :name => ConferenceCoAuthor.find(m).co_author}
|
||||
#{: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
|
||||
|
|
|
@ -42,6 +42,7 @@ class WritingConference
|
|||
validates :paper_title, :at_least_one => true
|
||||
before_validation :add_http
|
||||
after_save :save_writing_conference_files
|
||||
before_save :update_co_author
|
||||
validates :url, :format => /^(http|https):\/\/(([a-z0-9]+([\-\.]{1}[a-z0-9]+)*\.[a-z]{2,5})|((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?))(:[0-9]{1,5})?(\/.*)?/i, :unless => Proc.new{self.url.blank?}
|
||||
|
||||
attr_reader :author_tokens
|
||||
|
@ -49,10 +50,10 @@ class WritingConference
|
|||
def author_tokens=(ids)
|
||||
authors_ids = ids.split(",").map{|id|
|
||||
begin
|
||||
ConferenceCoAuthor.find(m).id
|
||||
ConferenceCoAuthor.find(id).id
|
||||
rescue
|
||||
if id != "0"
|
||||
new_co_author = ConferenceCoAuthor.new(:co_author => id, :name_id => create_user_id)
|
||||
new_co_author = ConferenceCoAuthor.new(:co_author => id)
|
||||
new_co_author.save
|
||||
new_co_author.id
|
||||
else
|
||||
|
@ -63,6 +64,19 @@ class WritingConference
|
|||
self.conference_co_author_ids = authors_ids
|
||||
end
|
||||
|
||||
def update_co_author
|
||||
if new_record?
|
||||
current_user = self.create_user_id
|
||||
else
|
||||
current_user = self.update_user_id
|
||||
end
|
||||
|
||||
self.conference_co_author_ids.each do |id|
|
||||
co_author = ConferenceCoAuthor.find(id)
|
||||
co_author.update_attribute(:name_id, current_user)
|
||||
end
|
||||
end
|
||||
|
||||
def self.search( category_id = nil )
|
||||
if category_id.to_s.size > 0
|
||||
find(:all, :conditions => {writing_conference_category_id: category_id}).desc( :is_top, :title )
|
||||
|
|
|
@ -1,9 +1,8 @@
|
|||
<div class="toolbar hh1">
|
||||
<div class="fn_g hp">
|
||||
<%= f.submit t("save"), name: "commit", value: "Save", class: "fn_btn ini_input hp hh1 thmc2 thmtxt" %>
|
||||
<!-- class: bt-cancle can't be remove -->
|
||||
<%= f.submit t("save"), name: "commit", class: "fn_btn ini_input hp hh1 thmc2 thmtxt" %>
|
||||
<% if not @writing_conference.new_record? %>
|
||||
<%= submit_tag t("cancel"), :type => "button", "ajax-remote" => "get", :href => panel_personal_conference_desktop_conference_pages_path, class: "bt-cancel ini_input hp hh1 thmadm thmtxt" %>
|
||||
<%= submit_tag t("cancel"), :type => "button", "callback-method"=>"cancelpaper", "ajax-remote" => "get", :href => panel_personal_conference_desktop_conference_pages_path, class: "ini_input hp hh1 thmadm thmtxt" %>
|
||||
<% end %>
|
||||
</div>
|
||||
<div class="hh1 hp sdm">
|
||||
|
@ -26,8 +25,7 @@
|
|||
<div class="scrollbar sb_h vp">
|
||||
<div class="track">
|
||||
<div class="thumb thmc2">
|
||||
<div class="end">
|
||||
</div>
|
||||
<div class="end"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -100,14 +98,12 @@
|
|||
<li class="s_grid_row">
|
||||
<%= label_tag("", t("personal_conference.url"), class: "s_grid_2 s_grid") %><%= f.text_field :url, size: "20", placeholder: "www.sample.com", class: "s_grid_4 s_grid"%>
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
<div column="true">
|
||||
<div class="s_form">
|
||||
<ul>
|
||||
<li class="s_grid_row">
|
||||
<%= f.label :author_tokens, t("personal_conference.authors") %><br />
|
||||
<%= f.text_area :author_tokens,
|
||||
class: "s_grid_6 s_grid",
|
||||
size: "20x2",
|
||||
|
@ -209,25 +205,6 @@
|
|||
<!-- </div>
|
||||
</div> -->
|
||||
|
||||
<%= stylesheet_link_tag "token-input-facebook" %>
|
||||
<%= javascript_include_tag :defaults, "jquery.tokeninput" %>
|
||||
|
||||
|
||||
<script>
|
||||
$(document).ready(function(){
|
||||
$(function() {
|
||||
$("#writing_conference_author_tokens").tokenInput("/panel/personal_conference/desktop/conference_pages/new.json", {
|
||||
crossDomain: false,
|
||||
prePopulate: $("#writing_conference_author_tokens").data("pre"),
|
||||
theme: "facebook",
|
||||
hintText: "<%=t("hintText")%>",
|
||||
noResultsText: "<%=t("noResultsText")%>",
|
||||
searchingText: "<%=t("searchingText")%>"
|
||||
});
|
||||
});
|
||||
});
|
||||
</script>
|
||||
|
||||
<script type="text/javascript">
|
||||
orbitDesktop.prototype.initializeJournalPapers.conference_title_autocomplete_list = <%= @conference_candidate.to_json.html_safe %>;
|
||||
// orbitDesktop.prototype.initializeJournalPapers.coauthor_autocomplete_list = <%= @co_author_candidate.to_json.html_safe %>;
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
<%= form_for @writing_conference, html: { multipart: true, "form-type"=>"ajax_form", "callback-method"=>"coAuthorformCallback"}, url: panel_personal_conference_desktop_conference_page_path(@writing_conference) do |f| %>
|
||||
<%= form_for @writing_conference, html: { multipart: true, "form-type"=>"ajax_form", "callback-method"=>"formCallback"}, url: panel_personal_conference_desktop_conference_page_path(@writing_conference) do |f| %>
|
||||
<%= render partial: 'form', locals: {:f => f} %>
|
||||
<%end%>
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
<%= form_for @writing_conference, html: { multipart: true, "form-type"=>"ajax_form", "callback-method"=>"coAuthorformCallback"}, url: panel_personal_conference_desktop_conference_pages_path do |f| %>
|
||||
<%= form_for @writing_conference, html: { multipart: true, "form-type"=>"ajax_form", "callback-method"=>"formCallback"}, url: panel_personal_conference_desktop_conference_pages_path do |f| %>
|
||||
<%= render partial: 'form', locals: {:f => f} %>
|
||||
<%end%>
|
||||
|
||||
|
|
|
@ -26,8 +26,8 @@ FactoryGirl.define do
|
|||
"#{data_json[n]["year"]}"
|
||||
end
|
||||
|
||||
f.sequence(:authors) do |n|
|
||||
"#{data_json[n]["author"].map{|m| m.split(",").reverse.join(" ")}.join(",")}"
|
||||
f.sequence(:author_tokens) do |n|
|
||||
"#{data_json[n]["author"].map{|m| m.split(",").reverse.map(&:strip).join(" ")}.join(",")}"
|
||||
end
|
||||
|
||||
#f.sequence(:form_to_start) do |n|
|
||||
|
|
|
@ -1,117 +1,231 @@
|
|||
orbitDesktop.prototype.initializeJournalPapers = function(target,url,cache){ // this init journal papers
|
||||
this.initializeJournalPapers.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.initializeJournalPapers.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.initializeJournalPapers.list = function(){ // to open list part in journal papers page
|
||||
var journalData;
|
||||
var bindHandlers = function(){ // to bind handlers for list page
|
||||
o.simple_drop_down();
|
||||
}
|
||||
|
||||
this.initializeJournalPapers.list = function(){ // to open list part in journal papers page
|
||||
var journalData;
|
||||
var bindHandlers = function(){ // to bind handlers for list page
|
||||
o.simple_drop_down();
|
||||
}
|
||||
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.initializeJournalPapers.paperDelete = function(data,dom){
|
||||
var parent = dom.parent().parent();
|
||||
if(data.success){
|
||||
parent.hide("slide",function(){parent.remove();});
|
||||
o.notify(data.msg,"success");
|
||||
}
|
||||
}
|
||||
|
||||
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");
|
||||
this.initializeJournalPapers.cancelpaper = function(){
|
||||
o.highlight_sub_menu_item(0);
|
||||
}
|
||||
|
||||
this.initializeJournalPapers.editpaper = 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 tokesplits = function(){
|
||||
$("#writing_journal_author_tokens").select2({
|
||||
multiple: true,
|
||||
minimumInputLength: 1,
|
||||
width: "300px;",
|
||||
formatResult: function movieFormatResult(coAuthor) {
|
||||
var markup = "";
|
||||
if (coAuthor.text !== undefined && coAuthor.email !== undefined) {
|
||||
if(!coAuthor.email){
|
||||
markup += coAuthor.text + " -- none email";
|
||||
} else {
|
||||
markup += coAuthor.text + " -- " + coAuthor.email;
|
||||
}
|
||||
}else if (coAuthor.email !== undefined) {
|
||||
markup += coAuthor.text;
|
||||
}
|
||||
return false;
|
||||
})
|
||||
}
|
||||
}
|
||||
this.initializeJournalPapers.paperDelete = function(data,dom){
|
||||
var parent = dom.parent().parent();
|
||||
if(data.success){
|
||||
parent.hide("slide",function(){parent.remove();});
|
||||
o.notify(data.msg,"success");
|
||||
}
|
||||
return markup;
|
||||
},
|
||||
ajax: {
|
||||
url: "/panel/personal_journal/desktop/journal_pages/new.json",
|
||||
dataType: 'json',
|
||||
quietMillis: 100,
|
||||
tokenSeparators: [","],
|
||||
data: function (search, page) {
|
||||
return {q: search};
|
||||
},
|
||||
results: function (data, page) {
|
||||
return {results: data.results};
|
||||
}
|
||||
},
|
||||
});
|
||||
|
||||
$("#writing_journal_author_tokens").select2("container").find("ul.select2-choices").sortable({
|
||||
containment: 'parent',
|
||||
start: function() { $("#writing_journal_author_tokens").select2("onSortStart"); },
|
||||
update: function() { $("#writing_journal_author_tokens").select2("onSortEnd"); }
|
||||
});
|
||||
}
|
||||
|
||||
this.initializeJournalPapers.editpaper = function(){
|
||||
o.highlight_sub_menu_item(1)
|
||||
var preData = function(){
|
||||
$("#writing_journal_author_tokens").select2('data', JSON.parse($("#writing_journal_author_tokens").attr('data-pre')));
|
||||
}
|
||||
|
||||
this.initializeJournalPapers.addpaper = function(){ // to open add pages in journal papers page
|
||||
var bindHandlers = function(){ // to bind handlers for add page
|
||||
o.simple_drop_down();
|
||||
$('#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;
|
||||
uploadFiles();
|
||||
tokesplits();
|
||||
preData();
|
||||
}
|
||||
|
||||
this.initializeJournalPapers.addpaper = 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();
|
||||
});
|
||||
|
||||
|
||||
$('.action a.remove_existing_record').click(function(){
|
||||
$(this).next('.should_destroy').attr('value', 1);
|
||||
$("tr#add_plugin_file_" + $(this).prev().attr('value')).hide();
|
||||
});
|
||||
|
||||
}
|
||||
bindHandlers();
|
||||
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();
|
||||
});
|
||||
}
|
||||
|
||||
this.initializeJournalPapers.journal = function(){ // to open add pages in journal papers page
|
||||
var bindHandlers = function(){ // to bind handlers for add page
|
||||
o.simple_drop_down();
|
||||
}
|
||||
bindHandlers();
|
||||
console.log("hi");
|
||||
var bindHandlers = function(){
|
||||
o.simple_drop_down();
|
||||
}
|
||||
|
||||
this.initializeJournalPapers.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");
|
||||
}
|
||||
var tokesplits = function(){
|
||||
$("#writing_journal_author_tokens").select2({
|
||||
multiple: true,
|
||||
minimumInputLength: 1,
|
||||
width: "300px;",
|
||||
formatResult: function movieFormatResult(coAuthor, container, query, escapeMarkup) {
|
||||
var markup = "";
|
||||
if (coAuthor.text !== undefined && coAuthor.email !== undefined) {
|
||||
if(!coAuthor.email){
|
||||
markup += coAuthor.text + " -- none email";
|
||||
} else {
|
||||
markup += coAuthor.text + " -- " + coAuthor.email;
|
||||
}
|
||||
}else if (coAuthor.email !== undefined) {
|
||||
markup += coAuthor.text;
|
||||
}
|
||||
return markup;
|
||||
},
|
||||
ajax: {
|
||||
url: "/panel/personal_journal/desktop/journal_pages/new.json",
|
||||
dataType: 'json',
|
||||
quietMillis: 100,
|
||||
tokenSeparators: [","],
|
||||
data: function (search, page) {
|
||||
return {q: search};
|
||||
},
|
||||
results: function (data, page) {
|
||||
return {results: data.results};
|
||||
}
|
||||
},
|
||||
});
|
||||
|
||||
$("#writing_journal_author_tokens").select2("container").find("ul.select2-choices").sortable({
|
||||
containment: 'parent',
|
||||
start: function() { $("#writing_journal_author_tokens").select2("onSortStart"); },
|
||||
update: function() { $("#writing_journal_author_tokens").select2("onSortEnd"); }
|
||||
});
|
||||
}
|
||||
|
||||
bindHandlers();
|
||||
uploadFiles();
|
||||
tokesplits();
|
||||
}
|
||||
|
||||
this.initializeJournalPapers.journal = function(){ // to open add pages in journal papers page
|
||||
var bindHandlers = function(){ // to bind handlers for add page
|
||||
o.simple_drop_down();
|
||||
}
|
||||
bindHandlers();
|
||||
}
|
||||
|
||||
this.initializeJournalPapers.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.initializeJournalPapers.coauthor = function(){ // to open add pages in coauthor page
|
||||
var bindHandlers = function(){ // to bind handlers for add page
|
||||
o.simple_drop_down();
|
||||
}
|
||||
this.initializeJournalPapers.coauthor = function(){ // to open add pages in coauthor page
|
||||
var bindHandlers = function(){ // to bind handlers for add page
|
||||
o.simple_drop_down();
|
||||
}
|
||||
bindHandlers();
|
||||
}
|
||||
this.initializeJournalPapers.coauthorRelationForm = function(data){
|
||||
if(data.success){
|
||||
o.notify(data.msg,"success");
|
||||
$("#co_author_relation_table").html(data.newvalue);
|
||||
}else{
|
||||
o.notify(data.msg,"alert");
|
||||
o.notify(data.msg,"success");
|
||||
$("#co_author_relation_table").html(data.newvalue);
|
||||
}else{
|
||||
o.notify(data.msg,"alert");
|
||||
}
|
||||
}
|
||||
this.initializeJournalPapers.coauthorRelationEditForm = function(data){
|
||||
if(data.success){
|
||||
o.notify(data.msg,"success");
|
||||
$("#co_author_relation_table").html(data.newvalue);
|
||||
}else{
|
||||
o.notify(data.msg,"alert");
|
||||
o.notify(data.msg,"success");
|
||||
$("#co_author_relation_table").html(data.newvalue);
|
||||
}else{
|
||||
o.notify(data.msg,"alert");
|
||||
}
|
||||
}
|
||||
this.initializeJournalPapers.allnone = function(d,o){
|
||||
this.initializeJournalPapers.allnone = function(d,o){
|
||||
switch(o.attr("href")){
|
||||
case "all":
|
||||
$("div.overview a.icon-check-empty").removeClass("icon-check-empty").addClass("icon-check");
|
||||
break;
|
||||
break;
|
||||
case "none":
|
||||
$("div.overview a.icon-check").removeClass("icon-check").addClass("icon-check-empty");
|
||||
break;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
|
|
|
@ -28,7 +28,7 @@ class Panel::PersonalJournal::Desktop::JournalCoAuthorRelationsController < Appl
|
|||
|
||||
if @journal_co_author_relation.save
|
||||
newv = render_to_string partial: "show_form", object: @journal_co_author_relations
|
||||
render json: {success: true, msg: "create_success", newvalue: newv}.to_json
|
||||
render json: {success: true, msg: t("create_success"), newvalue: newv}.to_json
|
||||
else
|
||||
error_msg = @journal_co_author_relation.errors.full_messages.join("<br />")
|
||||
render json: {success: false, msg: error_msg}.to_json
|
||||
|
@ -40,7 +40,7 @@ class Panel::PersonalJournal::Desktop::JournalCoAuthorRelationsController < Appl
|
|||
if @journal_co_author_relation.update_attributes(params[:journal_co_author_relation])
|
||||
@journal_co_author_relations = JournalCoAuthorRelation.all
|
||||
newv = render_to_string partial: "show_form", object: @journal_co_author_relations
|
||||
render json: {success: true, msg: "update_success", newvalue: newv}.to_json
|
||||
render json: {success: true, msg: t("update_success"), newvalue: newv}.to_json
|
||||
else
|
||||
error_msg = @journal_co_author.errors.full_messages.join("<br />")
|
||||
render json: {success: false, msg: error_msg}.to_json
|
||||
|
|
|
@ -26,24 +26,26 @@ class Panel::PersonalJournal::Desktop::JournalPagesController < ApplicationContr
|
|||
@level_types = JournalLevelType.all
|
||||
@author_types = JournalAuthorType.all
|
||||
@paper_types= JournalPaperType.all
|
||||
#@journal_co_author_candidate =
|
||||
# JournalCoAuthor.where(name_id: current_user.id).map{|c|c.co_author}
|
||||
|
||||
@journal_candidate =
|
||||
WritingJournal.where(create_user_id: current_user.id).map{|j|j.journal_title}.uniq
|
||||
|
||||
if (not params[:q].nil?) and (current_user.name.include?params[:q])
|
||||
@user = [{ :id => 0, :name => current_user.name}] # self account name
|
||||
@user = [{ :id => 0, :text => current_user.name, :email => current_user.email}] # self account name
|
||||
else
|
||||
@user = []
|
||||
end
|
||||
|
||||
@co_authors = JournalCoAuthor.where(name_id: current_user.id, :co_author => /#{params[:q]}/)
|
||||
@co_authors = [{ :id => params[:q], :name => params[:q] }] + # search string
|
||||
@user + # self account name
|
||||
@co_authors.map{|m| { :id => m.id, :name => m.co_author } } # match pattern
|
||||
@co_authors = JournalCoAuthor.where(name_id: current_user.id, :co_author => /#{params[:q]}/).asc(:co_author)
|
||||
|
||||
# search string + self account name + match pattern
|
||||
@co_authors = [{ :id => params[:q], :text => params[:q], :email => "#{t("add")}#{t("author")}" }] +
|
||||
@user +
|
||||
@co_authors.map{|m| { :id => m.id, :text => m.co_author, :email => m.email } }
|
||||
|
||||
respond_to do |format|
|
||||
format.html { render :layout => false}
|
||||
format.json { render :json => @co_authors.to_json }
|
||||
format.json { render :json => {:results => @co_authors}.to_json }
|
||||
end
|
||||
|
||||
end
|
||||
|
|
|
@ -84,9 +84,11 @@ module Panel::PersonalJournal::Desktop::JournalPagesHelper
|
|||
def generate_authors_name ids
|
||||
author_name = ids.map{|m|
|
||||
if m == "0"
|
||||
{:id => 0, :name => current_user.name}
|
||||
#{:id => 0, :text => current_user.name, :email => current_user.email }
|
||||
{:id => 0, :text => current_user.name}
|
||||
else
|
||||
{:id => m, :name => ConferenceCoAuthor.find(m).co_author}
|
||||
#{:id => m, :text => JournalCoAuthor.find(m).co_author, :email => JournalCoAuthor.find(m).email}
|
||||
{:id => m, :text => JournalCoAuthor.find(m).co_author}
|
||||
end
|
||||
}
|
||||
|
||||
|
|
|
@ -37,18 +37,24 @@ class WritingJournal
|
|||
after_save :save_writing_journal_files
|
||||
before_validation :add_http
|
||||
#before_save :save_co_author
|
||||
before_save :update_co_author
|
||||
validates :paper_title, :at_least_one => true
|
||||
validates :url, :format => /^(http|https):\/\/(([a-z0-9]+([\-\.]{1}[a-z0-9]+)*\.[a-z]{2,5})|((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?))(:[0-9]{1,5})?(\/.*)?/i, :unless => Proc.new{self.url.blank?}
|
||||
|
||||
attr_reader :author_tokens
|
||||
|
||||
def author_tokens=(ids)
|
||||
if new_record?
|
||||
current_user = create_user_id
|
||||
else
|
||||
current_user = update_user_id
|
||||
end
|
||||
authors_ids = ids.split(",").map{|id|
|
||||
begin
|
||||
JournalCoAuthor.find(m).id
|
||||
JournalCoAuthor.find(id).id
|
||||
rescue
|
||||
if id != "0"
|
||||
new_co_author = JournalCoAuthor.new(:co_author => id, :name_id => create_user_id)
|
||||
new_co_author = JournalCoAuthor.new(:co_author => id)
|
||||
new_co_author.save
|
||||
new_co_author.id
|
||||
else
|
||||
|
@ -58,6 +64,19 @@ class WritingJournal
|
|||
}
|
||||
self.journal_co_author_ids = authors_ids
|
||||
end
|
||||
|
||||
def update_co_author
|
||||
if new_record?
|
||||
current_user = self.create_user_id
|
||||
else
|
||||
current_user = self.update_user_id
|
||||
end
|
||||
|
||||
self.journal_co_author_ids.each do |id|
|
||||
co_author = JournalCoAuthor.find(id)
|
||||
co_author.update_attribute(:name_id, current_user)
|
||||
end
|
||||
end
|
||||
# old method
|
||||
#def save_co_author
|
||||
# authors_list = authors.split(",").map{|n| n.strip.gsub(/\s+/," ")}.reject{|n| n.empty? }
|
||||
|
|
|
@ -7,5 +7,5 @@
|
|||
-->
|
||||
<%= f.submit t("save"), class: "ini_input hp hh1 thmtxt thmc2", style: "margin-left: 10px;" %>
|
||||
<% if not @journal_co_author_relation.new_record? %>
|
||||
<%= submit_tag t("back"), :type => "button", class: "bt-cancel-type ini_input hp hh1 thmtxt" %>
|
||||
<%= submit_tag t("cancel"), :type => "button", class: "bt-cancel-type ini_input hp hh1 thmtxt" %>
|
||||
<% end %>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
|
||||
<%= f.submit t("save"), name: "commit", class: "fn_btn ini_input hp hh1 thmc2 thmtxt" %>
|
||||
<% if not @writing_journal.new_record? %>
|
||||
<%= submit_tag t("cancel"), :type => "button", "ajax-remote" => "get", :href => panel_personal_journal_desktop_journal_pages_path, class: "ini_input hp hh1 thmadm thmtxt" %>
|
||||
<%= submit_tag t("cancel"), :type => "button", "callback-method"=>"cancelpaper", "ajax-remote" => "get", :href => panel_personal_journal_desktop_journal_pages_path, class: "ini_input hp hh1 thmadm thmtxt" %>
|
||||
|
||||
<% end %>
|
||||
</div>
|
||||
|
@ -99,7 +99,6 @@
|
|||
<div class="s_form">
|
||||
<ul>
|
||||
<li class="s_grid_row">
|
||||
<%= f.label :author_tokens, t("personal_journal.authors") %><br />
|
||||
<%= f.text_area :author_tokens,
|
||||
class: "s_grid_6 s_grid",
|
||||
size: "20x2",
|
||||
|
@ -230,19 +229,6 @@
|
|||
<!-- </div>
|
||||
</div>
|
||||
-->
|
||||
<script>
|
||||
$(document).ready(function(){
|
||||
$("#writing_conference_author_tokens").tokenInput("/panel/personal_conference/desktop/conference_pages/new.json", {
|
||||
crossDomain: false,
|
||||
prePopulate: $("#writing_conference_author_tokens").data("pre"),
|
||||
theme: "facebook",
|
||||
hintText: "<%=t("hintText")%>",
|
||||
noResultsText: "<%=t("noResultsText")%>",
|
||||
searchingText: "<%=t("searchingText")%>"
|
||||
});
|
||||
});
|
||||
</script>
|
||||
|
||||
<script type="text/javascript">
|
||||
orbitDesktop.prototype.initializeJournalPapers.journal_title_autocomplete_list = <%= @journal_candidate.to_json.html_safe %>;
|
||||
// orbitDesktop.prototype.initializeJournalPapers.coauthor_autocomplete_list = <%= @co_author_candidate.to_json.html_safe %>;
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
<%= form_for @writing_journal, html: { multipart: true, "form-type"=>"ajax_form", "callback-method"=>"addpaper"}, url: panel_personal_journal_desktop_journal_page_path(@writing_journal) do |f| %>
|
||||
<%= form_for @writing_journal, html: { multipart: true, "form-type"=>"ajax_form", "callback-method"=>"formCallback"}, url: panel_personal_journal_desktop_journal_page_path(@writing_journal) do |f| %>
|
||||
<%= render partial: 'form', locals: {:f => f} %>
|
||||
<%end%>
|
||||
|
|
|
@ -13,7 +13,6 @@
|
|||
<div class="sdm_t hh1"><span class="icon-question-sign"></span></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="overview" content-layout="datalist" base-width="300" per-column="5">
|
||||
<% @journal_lists.each_with_index do |journal_list,i| %>
|
||||
<div class="g_col">
|
||||
|
|
|
@ -30,8 +30,8 @@ FactoryGirl.define do
|
|||
"#{data_json[n]["year"]}"
|
||||
end
|
||||
|
||||
f.sequence(:authors) do |n|
|
||||
"#{data_json[n]["author"].map{|m| m.split(",").reverse.join(" ")}.join(",")}"
|
||||
f.sequence(:author_tokens) do |n|
|
||||
"#{data_json[n]["author"].map{|m| m.split(",").reverse.map(&:strip).join(" ")}.join(",")}"
|
||||
end
|
||||
|
||||
f.sequence(:form_to_start) do |n|
|
||||
|
|
Loading…
Reference in New Issue