Diqqət! 4 aprel 2024-cü il tarixdən saytın yeni versiyası sheki.org domenində fəaliyyət göstərir. Bu köhnə versiyadır və yenilənməsi məhdudlaşdırılıb...

Changes

Jump to navigation Jump to search
22575 dəyişikliyi WikiSysop (Müzakirə) tərəfindən geri alındı.
Sətir 1: Sətir 1: −
  −
local coins = {};
  −
      
--[[--------------------------< F O R W A R D  D E C L A R A T I O N S >--------------------------------------
 
--[[--------------------------< F O R W A R D  D E C L A R A T I O N S >--------------------------------------
 
]]
 
]]
local is_set, in_array, remove_wiki_link; -- functions in Module:Citation/CS1/Utilities
+
 
 +
local is_set, in_array, remove_wiki_link, strip_apostrophe_markup; -- functions in Module:Citation/CS1/Utilities
    
local cfg; -- table of configuration tables that are defined in Module:Citation/CS1/Configuration
 
local cfg; -- table of configuration tables that are defined in Module:Citation/CS1/Configuration
  −
  −
--[[--------------------------< S T R I P _ A P O S T R O P H E _ M A R K U P >--------------------------------
  −
  −
Strip wiki italic and bold markup from argument so that it doesn't contaminate COinS metadata.
  −
This function strips common patterns of apostrophe markup.  We presume that editors who have taken the time to
  −
markup a title have, as a result, provided valid markup. When they don't, some single apostrophes are left behind.
  −
  −
]]
  −
  −
local function strip_apostrophe_markup (argument)
  −
if not is_set (argument) then return argument; end
  −
  −
if argument:find ( "''", 1, true ) == nil then -- Is there at least one double apostrophe?  If not, exit.
  −
return argument;
  −
end
  −
  −
while true do
  −
if argument:find ( "'''''", 1, true ) then -- bold italic (5)
  −
argument=argument:gsub("%'%'%'%'%'", ""); -- remove all instances of it
  −
elseif argument:find ( "''''", 1, true ) then -- italic start and end without content (4)
  −
argument=argument:gsub("%'%'%'%'", "");
  −
elseif argument:find ( "'''", 1, true ) then -- bold (3)
  −
argument=argument:gsub("%'%'%'", "");
  −
elseif argument:find ( "''", 1, true ) then -- italic (2)
  −
argument=argument:gsub("%'%'", "");
  −
else
  −
break;
  −
end
  −
end
  −
return argument; -- done
  −
end
        Sətir 214: Sətir 180:  
});
 
});
 
 
if in_array (class, {'arxiv', 'biorxiv', 'citeseerx', 'journal', 'news', 'magazine'}) or (in_array (class, {'conference', 'interview', 'map', 'press release', 'web'}) and is_set(data.Periodical)) or  
+
if in_array (class, {'arxiv', 'biorxiv', 'citeseerx', 'ssrn', 'journal', 'news', 'magazine'}) or (in_array (class, {'conference', 'interview', 'map', 'press release', 'web'}) and is_set(data.Periodical)) or  
 
('citation' == class and is_set(data.Periodical) and not is_set (data.Encyclopedia)) then
 
('citation' == class and is_set(data.Periodical) and not is_set (data.Encyclopedia)) then
 
OCinSoutput.rft_val_fmt = "info:ofi/fmt:kev:mtx:journal"; -- journal metadata identifier
 
OCinSoutput.rft_val_fmt = "info:ofi/fmt:kev:mtx:journal"; -- journal metadata identifier
if in_array (class, {'arxiv', 'biorxiv', 'citeseerx'}) then -- set genre according to the type of citation template we are rendering
+
if in_array (class, {'arxiv', 'biorxiv', 'citeseerx', 'ssrn'}) then -- set genre according to the type of citation template we are rendering
OCinSoutput["rft.genre"] = "preprint"; -- cite arxiv, cite biorxiv, cite citeseerx
+
OCinSoutput["rft.genre"] = "preprint"; -- cite arxiv, cite biorxiv, cite citeseerx, cite ssrn
 
elseif 'conference' == class then
 
elseif 'conference' == class then
 
OCinSoutput["rft.genre"] = "conference"; -- cite conference (when Periodical set)
 
OCinSoutput["rft.genre"] = "conference"; -- cite conference (when Periodical set)
Sətir 274: Sətir 240:  
 
 
for k, v in pairs( data.ID_list ) do -- what to do about these? For now assume that they are common to all?
 
for k, v in pairs( data.ID_list ) do -- what to do about these? For now assume that they are common to all?
-- if k == 'ISBN' then v = clean_isbn( v ) end
   
if k == 'ISBN' then v = v:gsub( "[^-0-9X]", "" ); end
 
if k == 'ISBN' then v = v:gsub( "[^-0-9X]", "" ); end
 
local id = cfg.id_handlers[k].COinS;
 
local id = cfg.id_handlers[k].COinS;
Sətir 286: Sətir 251:  
end
 
end
   −
--[[
  −
for k, v in pairs( data.ID_list ) do -- what to do about these? For now assume that they are common to all?
  −
local id, value = cfg.id_handlers[k].COinS;
  −
if k == 'ISBN' then value = clean_isbn( v ); else value = v; end
  −
if string.sub( id or "", 1, 4 ) == 'info' then
  −
OCinSoutput["rft_id"] = table.concat{ id, "/", v };
  −
else
  −
OCinSoutput[ id ] = value;
  −
end
  −
end
  −
]]
   
local last, first;
 
local last, first;
 
for k, v in ipairs( data.Authors ) do
 
for k, v in ipairs( data.Authors ) do
Sətir 336: Sətir 290:  
cfg = cfg_table_ptr;
 
cfg = cfg_table_ptr;
   −
is_set = utilities_page_ptr.is_set; -- import functions from select Module:Citation/CS1/Utilities module
+
is_set = utilities_page_ptr.is_set; -- import functions from selected Module:Citation/CS1/Utilities module
 
in_array = utilities_page_ptr.in_array;
 
in_array = utilities_page_ptr.in_array;
 
remove_wiki_link = utilities_page_ptr.remove_wiki_link;
 
remove_wiki_link = utilities_page_ptr.remove_wiki_link;
 +
strip_apostrophe_markup = utilities_page_ptr.strip_apostrophe_markup;
 
end
 
end
       +
--[[--------------------------< E X P O R T E D  F U N C T I O N S >------------------------------------------
 +
]]
    
return {
 
return {

Naviqasiya menyusu