Permanently protected module

모듈: 스포츠 결과

Module:Sports results

-- 스포츠 랭킹을 위한 크로스테이블 결과 작성 모듈 --자세한 것은, 메뉴얼을 참조해 주세요.  요구하다('모듈:글로벌 없음)  현지의 p = {}  --주요 기능 기능. p.주된()  -- arg를 취득하여 빈 값을 삭제합니다.  현지의 취득하다 = 요구하다('모듈:인수').취득하다  현지의 아르그 = 취득하다(, {parent First = 진실의})   -- 다른 섹션에서 섹션 변환을 사용하는 경우 조기 종료  한다면 (아르그['방해'] 그리고. 아르그['섹션'])   그리고. 아르그['방해'] ~= 아르그['섹션'] 그리고나서   돌아가다 ''  끝.   -- 지역 주민을 선언합니다.  현지의 t = {}  현지의 t_internals(t_internals. = {}  현지의 t_return(반환) = {}  현지의 team_list = {}  현지의 메모_존재하다 = 거짓의  현지의 ii, ii_fw, bg_col, team_name, team_code_ii, ii_start, ii_end  -- 옵션 커스텀팀 헤더  현지의 team_complete = 아르그['team_filename'] 또는 '홈'\\부재중'  -- 다리 수  현지의 다리 = 톤수(아르그['실패']) 또는 1  현지의 여러 줄의 다리 = (아르그['다행 다리'] 또는 '아니요') ~= '아니요'   -- 요청 시 링크 편집  현지의 베이스링크 = :부모 취득():getTitle(제목)()  한다면 .직함.get Current Title(전류 제목)().본문 == 베이스링크 그리고나서 베이스링크 = '' 끝.  현지의 template_name = 아르그['filename_name']   또는 (베이스링크 ~= '' 그리고. (':' .. 베이스링크))   또는 ''  현지의 edit_module = template_name == '' 그리고. ''   또는 요구하다('모듈:네바)._navbar({    template_name,    미니=1,    스타일.='오른쪽'   })   -- 테이블의 커스텀 시작점을 가져옵니다(대부분은 디폴트로1부터 시작합니다).  현지의 톱_포스 = 톤수(아르그['highest_pos']) 또는 1  -- 테이블의 커스텀 엔드 포인트를 가져옵니다(bottom_pos가 < top_pos인 경우 제한 없음).  현지의 bottom_pos = 톤수(아르그['pos_pos']) 또는 0  현지의 N_teams = 톱_포스 - 1 -- 시작 시 기본값은 0이지만 특정 엔트리를 건너뛰려면 더 많은 수가 필요합니다.   -- 다른 모듈을 로드합니다.  현지의 p_sub = 요구하다('모듈:스포츠 테이블/서브')   -- 팀 리스트의 대체 구문  한다면 아르그['team_order'] 그리고. 아르그['team_order'] ~= '' 그리고나서   현지의 리스트 = .본문.분열되다(아르그['team_order'], %s*[;,]%s*')   위해서 k, 이름  아이페어(리스트) 하다    한다면 이름 ~= '' 그리고나서     아르그['팀 .. k] = 이름    끝.   끝.  끝.   한다면 아르그['team_module_note'] 그리고나서   메모_존재하다=진실의   현지의 note_string = :확장 템플릿{ 직함 = 'efn',    args = { 그룹.='저알파', 아르그['team_module_note']} }   team_complete = team_complete .. note_string  끝.   - 연속된 팀 수 읽기(스팟 건너뛰기 후 엔트리 무시)  ii_start = N_teams  하는 동안에 아르그['팀..N_teams+1] ~= 제로 그리고. (bottom_pos < > 톱_포스 또는 N_teams < > bottom_pos) 하다   N_teams = N_teams+1   -- team_list 파라미터에 2회 슬쩍 추가합니다.실제 파라미터는 1회입니다.   -- 순위, 하위 항목에서 위치 검색의 두 번째 순위   --이것은 Lua가 숫자와 문자열을 모두 인덱스로 허용하기 때문에 가능합니다.   team_list[N_teams] = 아르그['팀..N_teams] -- i^th 엔트리는 팀 X입니다.   team_list[아르그['팀..N_teams]] = N_teams -- 팀 X의 엔트리는 포지션 i입니다.  끝.  ii_end = N_teams  -- 팀에게 보여줄 것  현지의 ii_show = team_list[아르그['show team']] -- 존재하지 않는 경우 0   -- 글꼴 크기 설정  현지의 폰트_사이즈=아르그['size_size'] 또는 '100%'   -- 헤더 작성  -- 테이블 열기  table.insert(t,'{ class="compatible plain rowheaders" style="text-align:center;size:"..폰트_사이즈..';"\n')  -- 테이블 제목  한다면 아르그['실패'] 그리고나서   table.insert(t,' + ' .. 아르그['실패'] .. '\n')  끝.  -- 첫 번째 열  t_return(반환).세어보세요 = 0    -- 서브함수 호출을 사용하는 더미 파라미터는 두 모듈이 서로 얽혀 있기 때문에 현시점에서는 최적이라고 생각됩니다.  t_return(반환).탭_텍스트 = t  -- 실제 텍스트  t_return(반환) = p_sub.콜헤드(t_return(반환),'자동, edit_module .. ' ' .. team_complete)  -- 다른 열은 하위 함수에 전달되었습니다.  t_return(반환) = p.머리글자(t_return(반환),아르그,p_sub,N_teams,team_list,다리,여러 줄의 다리)  t = t_return(반환).탭_텍스트   -- 고유성에 사용되는 랜덤 값  math.contracteseed(산술시드( os.clock() * 10^8 )  현지의 랜드_발 = math.matrix()   현지의 note_string, note_id  현지의 note_id_list = {}   -- 개별 행을 만듭니다.  ii_start = 톤수(아르그['highest_row']) 그리고. (톤수(아르그['highest_row']) > 톱_포스) 그리고. 톤수(아르그['highest_row']) 또는 톱_포스  ii_end = 톤수(아르그['syslog_row']) 그리고. (톤수(아르그['syslog_row']) < > N_teams) 그리고. 톤수(아르그['syslog_row']) 또는 N_teams  위해서 ii=ii_start,ii_end 하다   -- 팀 정보를 가져옵니다.   team_code_ii = team_list[ii]   team_name = 아르그[이름_'..team_code_ii] 또는 team_code_ii   현지의 ii_style = '텍스트 정렬:' .. (아르그['team_align'] 또는 '맞다') .. ';'    .. (ii 그리고. ii == ii_show 그리고. '중량: 굵은 글씨;' 또는 '')    .. (아르그['team_nowrap'] 그리고. 'white-space:nowrap;' 또는 '')   현지의 team_주의 = 아르그['주_'..team_code_ii]   한다면 team_주의 그리고나서    메모_존재하다 = 진실의    -- 존재하는 경우에만    --참고문헌의존재여부최초확인    한다면 것은 아니다. 아르그['주_'..team_주의] 그리고나서     -- 엔트리입니다.     -- 아티클에 더 많은 테이블이 있는 경우 고유 ID에 임의 끝 추가(그렇지 않으면 ID를 공유할 수 있음)     note_id = '표_주_'..team_code_ii..랜드_발..'"'     note_id_list[team_code_ii] = note_id     note_string = :확장 템플릿{ 직함 = 'efn',      args = { 그룹.='저알파', 이름.=note_id,  team_주의} }    또 다른     -- 다른 곳에 존재하는지 확인합니다.     현지의 note_local_num = team_list[team_주의] 또는 ii_end + 1     한다면 note_id_list[team_주의] 또는 ((note_local_num >= ii_start) 그리고. (note_local_num <=> ii_end)) 그리고나서      --존재합니다.      note_id = '표_주_'..team_주의..랜드_발..'"' -- 식별자      note_string = :확장 태그{ 이름. = 'ref,       args = { 그룹. = '저알파', 이름. = note_id} }     또 다른      -- 이 ID를 정의합니다.      -- 고유 ID에 랜덤 엔드 추가      note_id = '표_주_'..team_주의..랜드_발..'"'      note_id_list[team_주의] = note_id      note_string = :확장 템플릿{ 직함 = 'efn',       args = { 그룹.='저알파', 이름.=note_id, 아르그['주_'..team_주의]} }     끝.    끝.    --이것을 team_name 문자열에 추가합니다.    team_name = team_name..note_string   끝.   -- 팀명   table.insert(t,' -\n')  -- 새 행   table.insert(t,'! scope='행'.. (여러 줄의 다리 그리고. 'rowspan=' .. 다리 또는 '')     .. 'style='.. ii_style ..'"  '..team_name..'\n')  --직급번호    -- 필요한 경우 결과에 맞는 메모를 포함합니다.   위해서 JJ=톱_포스,N_teams 하다    현지의 team_code_module = team_list[JJ]    한다면 ii == JJ 그리고나서     --아무것도 아닙니다.    또 다른     위해서 l=1,다리 하다      현지의 m = (다리 == 1) 그리고. 일치_' 또는 '일치 .. l .. '_'      현지의 match_주의 = 아르그[m ..team_code_ii..'_'..team_code_module..'_주']      한다면 match_주의 그리고나서       메모_존재하다 = 진실의       -- 존재하는 경우에만       --참고문헌의존재여부최초확인       한다면 것은 아니다. (아르그['주_'..match_주의] 또는 아르그[m ..match_주의..'_주']) 그리고나서        -- 엔트리입니다.        -- 아티클에 더 많은 테이블이 있는 경우 고유 ID에 임의 끝 추가(그렇지 않으면 ID를 공유할 수 있음)        note_id = '표_주_'..l.."_"..team_code_ii..'_'..team_code_module..랜드_발..'"'        note_id_list[team_code_ii..'_'..team_code_module] = note_id        note_string = :확장 템플릿{ 직함 = 'efn',         args = { 그룹.='저알파', 이름.=note_id,  match_주의} }       또 다른        -- 다른 곳에 존재하는지 확인합니다.        현지의 note_local_num = team_list[match_주의] 또는 ii_end + 1        한다면 note_id_list[match_주의] 그리고나서         -- 기존 노트 참조         note_id = note_id_list[match_주의] -- 기존 식별자를 차용합니다.         note_string = :확장 태그{ 이름. = 'ref,          args = { 그룹. = '저알파', 이름. = note_id} }        그렇지 않으면 (note_local_num >= ii_start) 그리고. (note_local_num <=> ii_end) 그리고나서         -- 일치 노트에서 플레이어 노트를 참조합니다.이 경우 다리 부분을 제거한다.         note_id = '표_주_'..match_주의..랜드_발..'"'         note_string = :확장 태그{ 이름. = 'ref,          args = { 그룹. = '저알파', 이름. = note_id} }        또 다른         -- 내용에서 정의하기 전에 다른 일치 노트를 참조합니다.         note_id = '표_주_'..l.."_"..match_주의..랜드_발..'"'         note_id_list[match_주의] = note_id         note_string = :확장 템플릿{ 직함 = 'efn',          args = { 그룹.='저알파', 이름.=note_id, 아르그['주_'..match_주의]} }        끝.       끝.       -- 일치 결과 문자열에 추가합니다.       아르그[m..team_code_ii..'_'..team_code_module] = (아르그[m..team_code_ii..'_'..team_code_module] 또는 '–')..note_string      끝.     끝.    끝.   끝.   --그러면 개개의 결과   t = p.배를 젓다(t,아르그,N_teams,team_list,ii,ii_show,다리,여러 줄의 다리)  끝.   -- 테이블 닫기  table.insert(t, ' }\n')   -- 바닥글 정보를 가져옵니다.  현지의 갱신하다 = 아르그['갱신']   또는 '실패'  현지의 start_date = 아르그['start_date']   또는 '실패'  현지의 원천 = 아르그['소스']   또는 :확장 템플릿{ 직함 = '필요한 항목 필요,    args = { 이유='소스 매개 변수가 정의되지 않았습니다.', 날짜.=os.date('%B %Y') } }   -- 바닥글 텍스트 작성  -- 갱신일  한다면 string.lower(갱신하다)=='완전' 그리고나서   -- 아무것도 하지 않는다.  그렇지 않으면 갱신하다=='' 그리고나서   -- 빈 파라미터   table.insert(t_internals(t_internals.,'알 수 없는 곳에서 재생된 항목과 일치하도록 업데이트되었습니다.')  그렇지 않으면 string.lower(갱신하다)=='미래' 그리고나서   -- 미래의 시작일   table.insert(t_internals(t_internals.,'첫 번째 경기는 '에 진행됩니다.'..start_date..'. ')  또 다른   table.insert(t_internals(t_internals.,'에서 재생된 것과 일치하도록 업데이트됨'..갱신하다..'. ')  끝.  table.insert(t_internals(t_internals.,'출처: '..원천)  한다면 (아르그['filen_style'] 또는 '') == 'FBR' 그리고나서   table.insert(t_internals(t_internals., 아르그['team_filename']    그리고. '<br />레전드: 파란색 = 왼쪽 열 팀 승리, 노란색 = 무승부, 빨간색 = 맨 위 열 팀 승리.'    또는 '<br />레전드: 파란색 = 홈팀 승리, 노란색 = 무승부, 빨간색 = 원정팀 승리.')  그렇지 않으면 (아르그['filen_style'] 또는 '') == 'BSR' 그리고나서   table.insert(t_internals(t_internals., 아르그['team_filename']    그리고. '<br />레전드: 파란색 = 왼쪽 열 팀 승리, 빨간색 = 맨 위 열 팀 승리.'    또는 '<br />레전드: 파란색 = 홈팀 승리, 빨간색 = 원정팀 승리.')  끝.  한다면 아르그['a_note'] 그리고나서   table.insert(t_internals(t_internals., <br /> 앞으로 있을 경기에서 "a"는 두 참가자 간의 경쟁에 관한 기사가 있음을 나타냅니다.)  끝.  한다면 아르그['not_note'] 그리고나서   table.insert(t_internals(t_internals., '<br />배경 음영이 밝은 매치는 연장 후 결정되었습니다.')  끝.   현지의 템플 스타일 = :확장 태그{   이름. = '패턴 스타일', args = { src = '모듈:스포츠 결과/스타일.css' }  }   -- 메모 추가(해당하는 경우)  한다면 메모_존재하다 그리고나서   table.insert(t_internals(t_internals.,'<br>주의:')   t_internals(t_internals. = 템플 스타일 .. '<div class="sports-class-notes">'..table.concat(t_internals(t_internals.)..'/div>'   t_internals(t_internals. = t_internals(t_internals...:확장 템플릿{ 직함 = '노트리스트', args = { 그룹.='저알파'} }  또 다른   t_internals(t_internals. = 템플 스타일 .. '<div class="sports-class-notes">'..table.concat(t_internals(t_internals.)..'/div>'  끝.   -- 기본 텍스트 테이블에 바닥글 추가  table.insert(t,t_internals(t_internals.)   -- 앵커링크를 다시 씁니다.  위해서 k=1,#t 하다   한다면 t[k]:경기('%[%[#[^%[%]]*% ') 그리고나서    t[k] = .스트링.서브(t[k], '(%[%[)(#[^%[%]]*% )', '%1' .. 베이스링크 .. '%2')   끝.  끝.   돌아가다 '<div style="disp:hidden">'   .. '<div class="noresize overflowbugx" style="div:auto">\n'   .. table.concat(t) .. '/div> </div> 끝.  -- 기타 기능 현지의 기능. get_short_name(s, t, n, ss)  -- 정의되어 있는 경우 단축 이름을 반환합니다.  한다면 s 그리고. s ~= '' 그리고나서   돌아가다 s  끝.  --필요한 경우 deflag(deflag)  한다면 ss 그리고. n 그리고나서   한다면 ss == '플래그 없음' 그리고나서    n = .스트링.서브(n, '%[%[FF]'[Ii] [Ll] [Ee] :[^%[%]]*%]%]', '')   그렇지 않으면 ss == '실패' 그리고나서    n = .스트링.서브(n, '(<span class="flagicon">%s*%[%[FF][Ii] [Ll] [Ee] :[^%[%]]*link=][^%%]*(%)%][^ <>* </span>)%s*%[%[(^%[%]%]*)%[^%[%]]*%]%]', '%1%3%2')    n = .스트링.서브(n, '.*'(<span class="flagicon">%s*%[%[FF][Ii] [Ll] [Ee] :[^%[%]]*%]%][^<>*<span>.*', '%1')    n = .스트링.서브(n, '&nbsp;(</span>)',, '%1')   끝.  끝.   -- 가능하면 이름 있는 링크 텍스트를 팀 abbr로 바꿉니다.  한다면 n 그리고. t 그리고. n:경기('(%[%[[^%[%]]*%]%])') 그리고나서   n = .스트링.서브(n, '(%[%[[^% %]]*% )[^% %]]*(%]%])', '%1' .. t .. '%2')   n = .스트링.서브(n, '(%[%[[^% %]]*)(%]%])', '%1 ' .. t .. '%2')   n = .스트링.서브(n, '(%[%[^%%]*%)([A-Z][A-Z])[A~Z](%)&nsp;<span[^<>*>%([A~Z][A~Z])[A~Z]% </span>', '%1%2%3')   돌아가다 n  끝.  --아무것도 효과가 없었으니, 그냥 연결되지 않은 팀 abbr을 돌려주세요.  돌아가다 t 또는 '' 끝.  현지의 기능. get_score_background(s, c)  현지의 s1, s2  -- 착색 정의  현지의 wc, lc, tc  한다면 c == '레벨2' 그리고나서  wc, lc, tc = '#CCF9FF', '#FCC', '#FFC' -- blue2, red2, yellow2  그렇지 않으면 c == '레벨3' 그리고나서  wc, lc, tc = '#DDFCFF', '#FDD', '#FFD' -- blue3, red3, yellow3  그렇지 않으면 c == '레벨4' 그리고나서  wc, lc, tc = '#EFFFF', '#FEE', '#FFE' -- blue4, red4, yellow4  또 다른  wc, lc, tc = '#BBF3FF', '#FBB', '#FFB' -- blue1, red1, yellow1  끝.   -- 덮어쓰기 체크  한다면 s:경기('^%s*<span%s%s*스타일%s*=["\'%s]*배경[%-colr]*%s*:([^)\'"; <>*."-
                
) 그리고나서 현지의 c = .스트링.서브(s,'^%s*<span%s%s*스타일%s*=["\'%s]*배경[%-colr]*%s*:([^)\'"; <>*."-
$$SIDE_BOTTOM$$
    $$BOTTOM$$