پرش به محتوا
منوی اصلی
منوی اصلی
انتقال به نوار کناری
نهفتن
ناوبری
صفحهٔ اصلی
تغییرات اخیر
مقالهٔ تصادفی
راهنما دربارهٔ مدیاویکی
صفحههای ویژه
جستجو
جستجو
ظاهر
ساخت حساب
ورود
ابزارهای شخصی
ساخت حساب
ورود
صفحههایی برای ویرایشگرانی که از سامانه خارج شدند
بیشتر بدانید
مشارکتها
بحث
در حال ویرایش
پودمان:Side box
پودمان
بحث
English
خواندن
ویرایش مبدأ
نمایش تاریخچه
ابزارها
ابزارها
انتقال به نوار کناری
نهفتن
کنشها
خواندن
ویرایش مبدأ
نمایش تاریخچه
عمومی
پیوندها به این صفحه
تغییرات مرتبط
اطلاعات صفحه
ظاهر
انتقال به نوار کناری
نهفتن
هشدار:
شما وارد نشدهاید. نشانی آیپی شما برای عموم قابل مشاهده خواهد بود اگر هر تغییری ایجاد کنید. اگر
وارد شوید
یا
یک حساب کاربری بسازید
، ویرایشهایتان به نام کاربریتان نسبت داده خواهد شد، همراه با مزایای دیگر.
بررسی ضدهرزنگاری. این قسمت را پر
نکنید
!
-- This module implements {{side box}}. local yesno = require('Module:Yesno') local p = {} function p.main(frame) local origArgs = frame:getParent().args local args = {} for k, v in pairs(origArgs) do v = v:match('%s*(.-)%s*$') if v ~= '' then args[k] = v end end return p._main(args) end function p._main(args) local data = p.makeData(args) return p.renderSidebox(data) end function p.makeData(args) local data = {} -- Main table classes data.classes = {} if yesno(args.metadata) ~= false then table.insert(data.classes, 'metadata') end if args.position and (args.position:lower() == 'right' or args.position == 'راست') then table.insert(data.classes, 'mbox-small-right') else table.insert(data.classes, 'mbox-small') end table.insert(data.classes, args.class) -- Image if args.image and args.image ~= 'none' then data.image = args.image end -- Copy over data that does not need adjusting local argsToCopy = { -- Classes 'textclass', -- Styles 'style', 'textstyle', -- Above row 'above', 'abovestyle', -- Body row 'text', 'imageleft', -- Below row 'below', } for i, key in ipairs(argsToCopy) do data[key] = args[key] end return data end function p.renderSidebox(data) -- Renders the sidebox HTML. -- Table root local root = mw.html.create('table') root:attr('role', 'presentation') for i, class in ipairs(data.classes or {}) do root:addClass(class) end root:css{border = '1px solid #aaa', ['background-color'] = '#f9f9f9', color = '#000'} if data.style then root:cssText(data.style) end -- The "above" row if data.above then local aboveCell = root:newline():tag('tr'):tag('td') aboveCell :attr('colspan', data.imageleft and 3 or 2) :addClass('mbox-text') if data.textstyle then aboveCell:cssText(data.textstyle) end if data.abovestyle then aboveCell:cssText(data.abovestyle) end aboveCell :newline() :wikitext(data.above) end -- The body row local bodyRow = root:newline():tag('tr'):newline() if data.image then bodyRow:tag('td') :addClass('mbox-image') :wikitext(data.image) else bodyRow:tag('td'):css('width', '1px') end local textCell = bodyRow:newline():tag('td') textCell:addClass('mbox-text') textCell:addClass(data.textclass or 'plainlist') if data.textstyle then textCell:cssText(data.textstyle) end textCell:wikitext(data.text) if data.imageleft then bodyRow:newline():tag('td') :addClass('mbox-imageleft') :wikitext(data.imageleft) end -- The below row if data.below then local belowCell = root:newline():tag('tr'):tag('td') belowCell :attr('colspan', data.imageleft and 3 or 2) :addClass('mbox-text') if data.textstyle then belowCell:cssText(data.textstyle) end belowCell:wikitext(data.below) end root:newline() return tostring(root) end return p
خلاصه:
لطفاً توجه داشته باشید که همهٔ مشارکتها در ایرانپدیا ممکن است توسط دیگر مشارکتکنندگان تغییر یابند، ویرایش یا حذف شوند. اگر نمیخواهید نوشتههایتان بیرحمانه ویرایش شوند؛ بنابراین، آنها را اینجا ارائه نکنید.
شما همچنین به ما تعهد میکنید که خودتان این را نوشتهاید یا آن را از یک منبع با مالکیت عمومی یا مشابه آزاد آن برداشتهاید (
ایرانپدیا:حق تکثیر
را برای جزئیات بیشتر ببینید).
کارهای دارای حق تکثیر را بدون اجازه ارائه نکنید!
لغو
راهنمای ویرایش
(در پنجرهٔ تازه باز میشود)
پیشنمایش صفحه با این الگو
الگوی بهکاررفته در این صفحه:
پودمان:Side box/توضیحات
(
ویرایش
)
جستجو
جستجو
در حال ویرایش
پودمان:Side box
افزودن مبحث