Khác biệt giữa các bản “Mô đun:BD”
Dòng 174: Dòng 174:
 
       end
 
       end
 
     else
 
     else
       str = str.."<span style='color:#FDC802;'>'"..tp.."' không trong danh sách mục từ của Đề án Biên soạn Bách khoa toàn thư Việt Nam.</span> Hãy thử tìm các tên gọi tương đương về chủ đề và dùng {{bình duyệt|chủ đề=[tên tương đương]}} để kiểm tra lại xem tên tương đương có nằm trong danh sách mục từ của Đề án Biên soạn Bách khoa toàn thư Việt Nam không. Nếu không được thì tiến hành các bước bên dưới.\n"
+
       str = str.."<span style='color:orange;'>'"..tp.."' không trong danh sách mục từ của Đề án Biên soạn Bách khoa toàn thư Việt Nam.</span> Hãy thử tìm các tên gọi tương đương về chủ đề và dùng {{bình duyệt|chủ đề=[tên tương đương]}} để kiểm tra lại xem tên tương đương có nằm trong danh sách mục từ của Đề án Biên soạn Bách khoa toàn thư Việt Nam không. Nếu không được thì tiến hành các bước bên dưới.\n"
 
       str = str.."* Độ nổi bật: "
 
       str = str.."* Độ nổi bật: "
 
       if args['nổi 1'] and args['nổi 2'] then
 
       if args['nổi 1'] and args['nổi 2'] then

Phiên bản lúc 23:01, ngày 6 tháng 11 năm 2020

Có thể viết tài liệu về mô đun này tại Mô đun:BD/tài liệu.

-- danh sách các mục từ chính thức của Đề án Biên soạn Bách khoa toàn thư Việt Nam
local bktt1 = mw.loadData("Mô đun:BD/bktt1") 
local bktt2 = mw.loadData("Mô đun:BD/bktt2") 
local bktt3 = mw.loadData("Mô đun:BD/bktt3") 
local bktt4 = mw.loadData("Mô đun:BD/bktt4") 
local bktt5 = mw.loadData("Mô đun:BD/bktt5") 
local bktt6 = mw.loadData("Mô đun:BD/bktt6") 
local bktt7 = mw.loadData("Mô đun:BD/bktt7") 
local bktt8 = mw.loadData("Mô đun:BD/bktt8") 
local bktt9 = mw.loadData("Mô đun:BD/bktt9") 
local bktt10 = mw.loadData("Mô đun:BD/bktt10") 
local bktt11 = mw.loadData("Mô đun:BD/bktt11") 
local bktt12 = mw.loadData("Mô đun:BD/bktt12") 
local bktt13 = mw.loadData("Mô đun:BD/bktt13") 
local bktt14 = mw.loadData("Mô đun:BD/bktt14") 
local bktt15 = mw.loadData("Mô đun:BD/bktt15") 
local bktt16 = mw.loadData("Mô đun:BD/bktt16") 
local bktt17 = mw.loadData("Mô đun:BD/bktt17") 
local bktt18 = mw.loadData("Mô đun:BD/bktt18") 
local bktt19 = mw.loadData("Mô đun:BD/bktt19")
local bktt20 = mw.loadData("Mô đun:BD/bktt20") 
local bktt21 = mw.loadData("Mô đun:BD/bktt21") 
local bktt22 = mw.loadData("Mô đun:BD/bktt22") 
local bktt23 = mw.loadData("Mô đun:BD/bktt23") 
local bktt24 = mw.loadData("Mô đun:BD/bktt24") 
local bktt25 = mw.loadData("Mô đun:BD/bktt25") 
local bktt26 = mw.loadData("Mô đun:BD/bktt26") 
local bktt27 = mw.loadData("Mô đun:BD/bktt27") 
local bktt28 = mw.loadData("Mô đun:BD/bktt28") 
local bktt29 = mw.loadData("Mô đun:BD/bktt29") 
local bktt30 = mw.loadData("Mô đun:BD/bktt30") 
local bktt31 = mw.loadData("Mô đun:BD/bktt31") 
local bktt32 = mw.loadData("Mô đun:BD/bktt32") 
local bktt33 = mw.loadData("Mô đun:BD/bktt33") 
local bktt34 = mw.loadData("Mô đun:BD/bktt34") 
local bktt35 = mw.loadData("Mô đun:BD/bktt35") 
local bktt36 = mw.loadData("Mô đun:BD/bktt36") 
local TableTools = require("Mô đun:TableTools") 

local p = {};

-- Hiển thị tiến độ

p.progress = function( frame )  
    local str = "Chức năng này đang được xây dựng ..."  
    return str
end  

-- Phần 1 - đánh giá về chủ đề



--- Đạt nêú trong danh sách mục từ của Đề án Biên soạn Bách khoa toàn thư Việt Nam

---- Kiểm tra xem đã nằm trong danh sách mục từ của Đề án Biên soạn Bách khoa toàn thư Việt Nam chưa
p.inBKTT = function( pt ) -- pt = page title
   if TableTools.inArray(bktt1, pt) then
      return true
   elseif TableTools.inArray(bktt2, pt) then
      return true
   elseif TableTools.inArray(bktt3, pt) then
      return true
   elseif TableTools.inArray(bktt4, pt) then
      return true
   elseif TableTools.inArray(bktt5, pt) then
      return true
   elseif TableTools.inArray(bktt6, pt) then
      return true
   elseif TableTools.inArray(bktt7, pt) then
      return true
   elseif TableTools.inArray(bktt8, pt) then
      return true
   elseif TableTools.inArray(bktt9, pt) then
      return true
   elseif TableTools.inArray(bktt10, pt) then
      return true
   elseif TableTools.inArray(bktt11, pt) then
      return true
   elseif TableTools.inArray(bktt12, pt) then
      return true
   elseif TableTools.inArray(bktt13, pt) then
      return true
   elseif TableTools.inArray(bktt14, pt) then
      return true
   elseif TableTools.inArray(bktt15, pt) then
      return true
   elseif TableTools.inArray(bktt16, pt) then
      return true
   elseif TableTools.inArray(bktt17, pt) then
      return true
   elseif TableTools.inArray(bktt18, pt) then
      return true
   elseif TableTools.inArray(bktt19, pt) then
      return true
   elseif TableTools.inArray(bktt20, pt) then
      return true
   elseif TableTools.inArray(bktt21, pt) then
      return true
   elseif TableTools.inArray(bktt22, pt) then
      return true
   elseif TableTools.inArray(bktt23, pt) then
      return true
   elseif TableTools.inArray(bktt24, pt) then
      return true
   elseif TableTools.inArray(bktt25, pt) then
      return true
   elseif TableTools.inArray(bktt26, pt) then
      return true
   elseif TableTools.inArray(bktt27, pt) then
      return true
   elseif TableTools.inArray(bktt28, pt) then
      return true
   elseif TableTools.inArray(bktt29, pt) then
      return true
   elseif TableTools.inArray(bktt30, pt) then
      return true
   elseif TableTools.inArray(bktt31, pt) then
      return true
   elseif TableTools.inArray(bktt32, pt) then
      return true
   elseif TableTools.inArray(bktt33, pt) then
      return true
   elseif TableTools.inArray(bktt34, pt) then
      return true
   elseif TableTools.inArray(bktt35, pt) then
      return true
   elseif TableTools.inArray(bktt36, pt) then
      return true
   else
      return false
   end
end

---- Nếu chưa nằm trong thì xét 2 yếu tố sau

--- Độ nổi bật
p.notability = function( frame )  
    local output = false 
    return output
end  
--- Độ tách biệt



-- Phần 2 - đánh giá về nội dung

-- Phần hiển thị ra các nội dung bên trên

p.bd = function( frame ) 
    -- get arguments
    local args = {}
    for k, v in pairs(frame:getParent().args) do
       args[k] = v
    end
 
    -- page title
    local pt = mw.title.getCurrentTitle().text
    -- page topic
    local tp = ""
    if args['chủ đề'] then
       tp = args['chủ đề']
    else
       tp = pt
    end

    local str = "'''Phần 1. Đánh giá về chủ đề của mục từ'''\n\n" 

    if p.inBKTT(tp) then
       str = str.."Chủ đề '"..tp.."' nằm trong danh sách mục từ của Đề án Biên soạn Bách khoa toàn thư Việt Nam. Do vậy tự động thõa mãn các yêu cầu về độ nổi bật và độ tách biệt."
       if not(pt==tp) then
          str = str.." Xem xét di chuyển mục từ về tên '"..tp.."'\n"
       else
          str = str.."\n"
       end
    else
       str = str.."<span style='color:orange;'>'"..tp.."' không trong danh sách mục từ của Đề án Biên soạn Bách khoa toàn thư Việt Nam.</span> Hãy thử tìm các tên gọi tương đương về chủ đề và dùng {{bình duyệt|chủ đề=[tên tương đương]}} để kiểm tra lại xem tên tương đương có nằm trong danh sách mục từ của Đề án Biên soạn Bách khoa toàn thư Việt Nam không. Nếu không được thì tiến hành các bước bên dưới.\n"
       str = str.."* Độ nổi bật: "
       if args['nổi 1'] and args['nổi 2'] then
            str = str.."<span style='color:green;'>'''Đạt'''</span> - Người bình duyệt ký tên bên dưới xác nhận chủ đề đạt độ nổi bật, do có ít nhất 2 nguồn [[BKTT:Nguồn uy tín|'''uy tín''']], [[BKTT:Nguồn thứ cấp|'''thứ cấp''']], '''độc lập''' có đề cập một cách '''đáng kể''' về chủ đề '"..tp.."':\n**Mã số lưu trữ hoặc ISBN hoặc DOI của nguồn 1: "..args['nổi 1'].."\n**Mã số lưu trữ hoặc ISBN hoặc DOI của nguồn 2: "..args['nổi 2'].."\n"
       else
            str = str.."<span style='color:red;'>Cần bổ sung nguồn xác định độ nổi bật.</span> Hãy dùng {{bình duyệt|nổi 1=[mã ISBN, DOI hoặc mã số lưu trữ tại nơi lưu trữ quốc gia]|nổi 2=[mã ISBN hoặc DOI hoặc mã số lưu trữ tại nơi lưu trữ quốc gia]}}, với 2 mã số chỉ đến 2 nguồn [[BKTT:Nguồn uy tín|'''uy tín''']], [[BKTT:Nguồn thứ cấp|'''thứ cấp''']], '''độc lập''' có đề cập một cách '''đáng kể''' về chủ đề '"..tp.."'.\n"
            return str  -- dừng ở đây, cần giải quyết xong độ nổi bật thì mới bình duyệt tiếp
       end
       str = str.."* Độ tách biệt: "
       if args['tách']=='không trùng' then
            str = str.."<span style='color:green;'>'''Đạt'''</span> - Người bình duyệt ký tên bên dưới xác nhận đã tìm kiếm trong BKTT.vn và không tìm thấy được mục từ nào có ý nghĩa gần với chủ đề '"..tp.."'\n"
       elseif args['tách'] and args['tách vì'] then
            str = str.."<span style='color:green;'>'''Đạt'''</span> - Người bình duyệt ký tên bên dưới xác nhận đã tìm kiếm trong BKTT.vn và chỉ tìm thấy được mục từ nêu nội dung có ý nghĩa gần nhất với chủ đề '"..tp.."' là [["..args['tách'].."]]. Tuy nhiên [["..args['tách'].."]] tách biệt với '"..tp.."' vì "..args['tách vì'].."'\n"
       elseif args['tách'] then
            str = str.." Người bình duyệt ký tên bên dưới xác nhận đã tìm kiếm trong BKTT.vn và tìm thấy được mục từ nêu nội dung có ý nghĩa gần nhất với chủ đề '"..tp.."' là [["..args['tách'].."]]. <span style='color:red;'>Cần bổ sung lý do:</span> tại sao [["..args['tách'].."]] lại tách biệt với '"..tp.."'.\n"
            return str  -- dừng ở đây, cần giải quyết xong độ tách biệt thì mới bình duyệt tiếp
       else
            str = str.."<span style='color:red;'>Cần tìm kiếm trong BKTT.vn xem đã có những mục từ nào nêu nội dung có ý nghĩa gần với chủ đề '"..tp.."' chưa.</span> Nếu đã tìm và không thấy, thì dùng bổ sung vào bản mẫu bình duyệt đang sử dụng tham số '|tách = không trùng'. Nếu đã tìm và đã thấy có các mục từ nêu nội dung có ý nghĩa gần với chủ đề '"..tp.."', thì chọn lấy mục từ có nội dung gần với chủ đề '"..tp.."' nhất và bổ sung vào bản mẫu bình duyệt đang sử dụng tham số '|tách =[tên mục từ có nội dung gần nhất]|tách vì=[lý do tại sao mục từ có nội dung gần nhất vẫn tách biệt với '"..tp.."']'\n"
            return str  -- dừng ở đây, cần giải quyết xong độ tách biệt thì mới bình duyệt tiếp
       end
    end

    str = str.."\n'''Phần 2. Đánh giá về nội dung của mục từ'''\n\n"
    return str
end

return p