Changes

Jump to navigation Jump to search
1,673 bytes added ,  16:01, 16 December 2015
m
1 revision: family tree template
Line 1: Line 1:  
-- Inputs:
 
-- Inputs:
 
--    image - Can either be a bare filename (with or without the File:/Image: prefix) or a fully formatted image link
 
--    image - Can either be a bare filename (with or without the File:/Image: prefix) or a fully formatted image link
 +
--    page - page to display for multipage images (DjVu)
 
--    size - size to display the image
 
--    size - size to display the image
 
--    maxsize - maximum size for image
 
--    maxsize - maximum size for image
Line 43: Line 44:  
     "Silver - Replace this image female.svg",
 
     "Silver - Replace this image female.svg",
 
     "Silver - Replace this image male.svg",
 
     "Silver - Replace this image male.svg",
 +
    "Replace this image.svg",
 +
"Cricket no pic.png",
 +
"CarersLogo.gif",
 +
"Diagram Needed.svg",
 +
"Example.jpg",
 +
"Image placeholder.png",
 +
"No male portrait.svg",
 +
"Nocover-upload.png",
 +
"NoDVDcover copy.png",
 +
"Noribbon.svg",
 +
"No portrait-BFD-test.svg",
 +
"Placeholder barnstar ribbon.png",
 +
"Project Trains no image.png",
 +
"Image-request.png",
 +
"Sin bandera.svg",
 +
"Sin escudo.svg",
 +
"Replace this image - temple.png",
 +
"Replace this image butterfly.png",
 +
"Replace this image.svg",
 +
"Replace this image1.svg",
 +
"Resolution angle.png",
 +
"Image-No portrait-text-BFD-test.svg",
 +
"Insert image here.svg",
 +
"No image available.png",
 +
"NO IMAGE YET square.png",
 +
"NO IMAGE YET.png",
 +
"No Photo Available.svg",
 +
"No Screenshot.svg",
 +
"No-image-available.jpg",
 +
"Null.png",
 +
"PictureNeeded.gif",
 +
"Place holder.jpg",
 +
"Unbenannt.JPG",
 +
"UploadACopyrightFreeImage.svg",
 +
"UploadAnImage.gif",
 +
"UploadAnImage.svg",
 +
"UploadAnImageShort.svg",
 +
"CarersLogo.gif",
 +
"Diagram Needed.svg",
 +
"No male portrait.svg",
 +
"NoDVDcover copy.png",
 +
"Placeholder barnstar ribbon.png",
 +
"Project Trains no image.png",
 +
"Image-request.png",
 
}
 
}
   Line 48: Line 93:  
     -- change underscores to spaces
 
     -- change underscores to spaces
 
     image = mw.ustring.gsub(image, "_", " ");
 
     image = mw.ustring.gsub(image, "_", " ");
 +
    assert(image ~= nil, 'mw.ustring.gsub(image, "_", " ") must not return nil')
 
     -- if image starts with [[ then remove that and anything after |
 
     -- if image starts with [[ then remove that and anything after |
 
     if mw.ustring.sub(image,1,2) == "[[" then
 
     if mw.ustring.sub(image,1,2) == "[[" then
 
         image = mw.ustring.sub(image,3);
 
         image = mw.ustring.sub(image,3);
 
         image = mw.ustring.gsub(image, "([^|]*)|.*", "%1");
 
         image = mw.ustring.gsub(image, "([^|]*)|.*", "%1");
 +
        assert(image ~= nil, 'mw.ustring.gsub(image, "([^|]*)|.*", "%1") must not return nil')
 
     end
 
     end
 
     -- Trim spaces
 
     -- Trim spaces
 
     image = mw.ustring.gsub(image, '^[ ]*(.-)[ ]*$', '%1');
 
     image = mw.ustring.gsub(image, '^[ ]*(.-)[ ]*$', '%1');
 +
    assert(image ~= nil, "mw.ustring.gsub(image, '^[ ]*(.-)[ ]*$', '%1') must not return nil")
 
     -- remove prefix if exists
 
     -- remove prefix if exists
 
     local allNames = mw.site.namespaces[6].aliases
 
     local allNames = mw.site.namespaces[6].aliases
Line 128: Line 176:  
     else
 
     else
 
         local result = "";
 
         local result = "";
 +
        local page = frame.args["page"];
 
         local size = frame.args["size"];
 
         local size = frame.args["size"];
 
         local maxsize = frame.args["maxsize"];
 
         local maxsize = frame.args["maxsize"];
Line 158: Line 207:  
             if size ~= "" and size ~= nil then
 
             if size ~= "" and size ~= nil then
 
                 local sizenumber = tonumber(mw.ustring.match(size,"%d*")) or 0;
 
                 local sizenumber = tonumber(mw.ustring.match(size,"%d*")) or 0;
                 local maxsizenumber = tonumber(mw.ustring.match(maxsize,"%d*"));
+
                 local maxsizenumber = tonumber(mw.ustring.match(maxsize,"%d*")) or 0;
 
                 if sizenumber>maxsizenumber and maxsizenumber>0 then
 
                 if sizenumber>maxsizenumber and maxsizenumber>0 then
 
                     size = maxsize;
 
                     size = maxsize;
Line 170: Line 219:  
          
 
          
 
         result = "[[File:" .. image;
 
         result = "[[File:" .. image;
 +
        if page ~= "" and page ~= nil then
 +
            result = result .. "|page=" .. page;
 +
        end
 
         if size ~= "" and size ~= nil then
 
         if size ~= "" and size ~= nil then
 
             result = result .. "|" .. size;
 
             result = result .. "|" .. size;
Line 189: Line 241:  
             result = result .. "|border";
 
             result = result .. "|border";
 
         end
 
         end
         if upright ~= "" then
+
         if upright == "yes" then
 +
            result = result .. "|upright";
 +
        elseif upright ~= "" then
 
             result = result .. "|upright=" .. upright;
 
             result = result .. "|upright=" .. upright;
 
         end
 
         end

Navigation menu