Пређи на садржај

Шаблон:Таргет

С Википедије, слободне енциклопедије

Фор усе wитх Глобал мессаге деливерy/Таргетс, мостлy. Еxамплес:

{{target | page = Wikiversidad:Claustro Wikiversitario | site = es.wikiversity.org}}

Wикиверсидад:Цлаустро Wикиверситарио [ат] ес.wикиверситy.орг

{{target | user=Nemo bis | site = it.wikiquote.org}}

Немо бис [ат] ит.wикиqуоте.орг

Тхе цуррент глобал деливерy сцрипт лоокс фор тхис темплате он еацх лине. Тхе лине маy бе прецедед бy * ор #, бут тхис ис нот нецессарy.

Ноте: Унлике wхен инвокинг МедиаWики темплатес елсеwхере, тхе сцрипт реqуирес тхат еацх {{target}} ентрy бе он итс оwн лине (wитх алл оф итс параметерс) ин тхе специфиед ордер. Путтинг тхе "сите" параметер бефоре тхе "паге" ор "усер" параметер wилл нот wорк. Путтинг тхе параметерс он тхеир оwн линес wилл нот wорк.

Фор тхосе wхо аре тецхницаллy инцлинед, тхе цуррент сцрипт'с цоде лоокс сометхинг лике тхис:

# Define two nasty regexen
target_template_user_re = re.compile(r'\{\{\s*target\s*\|\s*user\s*=\s*(.+)\s*\|\s*site\s*=\s*(.+)\s*\}\}')
target_template_page_re = re.compile(r'\{\{\s*target\s*\|\s*page\s*=\s*(.+)\s*\|\s*site\s*=\s*(.+)\s*\}\}')

def parse_input_page(home_wiki, input_page):
    global target_template_user_re
    global target_template_page_re
    targets_list = []
    targets_obj = wikitools.Page(home_wiki, input_page, followRedir=False)
    targets_page_text = targets_obj.getWikiText()
    for line in targets_page_text.split('\n'):
        if target_template_user_re.search(line):
            input_target_user = target_template_user_re.search(line).group(1).strip()
            input_target_site = target_template_user_re.search(line).group(2).strip()
            if re.search(r'[A-Za-z.\-]', input_target_site):
                targets_list.append([input_target_site, 'User talk:' + input_target_user])
        elif target_template_page_re.search(line):
            input_target_user = target_template_page_re.search(line).group(1).strip()
            input_target_site = target_template_page_re.search(line).group(2).strip()
            if re.search(r'[A-Za-z.]', input_target_site):
                targets_list.append([input_target_site, input_target_user])
    targets_list = sorted(targets_list)
    return targets_list