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 |