모듈:유효 보호 수준
Module| 이 모듈은 페이지 보호 대상입니다.이 모듈은 매우 많은 페이지에서 사용 중이거나 매우 자주 교체됩니다.파손이나 실수는 많은 페이지에 영향을 미치고 사소한 편집이라도 서버에 큰 부하가 걸릴 수 있으므로 편집으로부터 보호됩니다. |
| 이 Lua 모듈은 시스템메시지로 약 53,000페이지에 걸쳐 사용됩니다. 이를 변경하면 Wikipedia 사용자 인터페이스가 즉시 변경될 수 있습니다. 중대한 중단을 방지하려면 모듈의 /sandbox 또는 /testcase 서브페이지 또는 자체 모듈 샌드박스에서 변경 사항을 테스트해야 합니다.테스트한 변경은 한 번의 편집으로 이 페이지에 추가할 수 있습니다.토크 페이지에서 변경 사항을 논의한 후 구현하십시오. |
이 모듈에서는 페이지에서 특정 액션을 수행하기 위해 필요한 그룹을 취득하는 방법을 설명합니다.현재 다음 기준을 테스트하고 있습니다.
- 보류 중인 페이지 변경 보호: 자동 확인됨
- 사용자 공간 또는 MediaWiki 네임스페이스의 JavaScript 또는 CSS 서브페이지인 페이지: interfaceadmin
- MediaWiki 네임스페이스에 있는 페이지: sysop
- 사용자 공간의 JSON 하위 페이지인 페이지: sysop
- 보호되는 페이지: sysop, templateeditor, extendedconfirmed 또는 autoconfirmed
- 캐스케이드 보호 페이지에서 사용되는 페이지: sysop
- 페이지 제목이 블랙리스트와 일치함: templateeditor 또는 autoconfirmed
- 이동하는 파일: filemover
- 이동 중인 페이지 또는 업로드 중인 파일: 자동 확인됨
- 작성 중인 비초안 비토크 페이지: 사용자
- 기타 사항: *
템플릿으로 보호된 파일을 이동할 경우 파일오버와 템플릿에디터가 모두 필요하지만 템플릿에디터만 반환됩니다.템플릿 보호는 현재 파일에 사용해서는 안 되기 때문에 이 방법은 조만간 변경될 것 같지 않습니다.
사용.
경고:이 모듈은 실행될 때마다 최대 4개의 고가의 파서 함수 호출을 사용합니다.정확한 유효 보호 수준이 필요한 경우에만 사용해야 합니다.그렇지 않으면 title.protection 사용을 고려하십시오.대신 레벨입니다.
다른 모듈에서
이 모듈을 로드하려면:
현지의 효과적인 보호레벨 = 요구하다('모듈:유효 보호 수준').메인 함수는 두 개의 파라미터를 받아들입니다.첫 번째는 확인할 액션을 포함하는 문자열로, "편집", "작성", "이동", "업로드", "삭제 취소" 또는 "자동 뷰" 중 하나여야 합니다.두 번째는 옵션이며 확인할 페이지 이름 또는 mw.title 함수에서 반환되는 제목 중 하나입니다.두 번째 파라미터가 생략된 경우 표시되는 페이지는 체크된 페이지입니다.return 값은 지정된 액션을 수행하기 위해 필요한 그룹의 이름을 포함하는 문자열입니다.
Wikitext에서
파라미터는 직접 호출할 때와 동일합니다.
{{#invoke:Effective protection level action title}} 「 」를 참조해 주세요.
현지의 p = {} -- 지정된 제목에 대해 지정된 작업을 수행하는 데 필요한 권한을 반환합니다. -- 제목이 지정되지 않은 경우, 표시되는 페이지의 제목이 사용됩니다. 기능. p.메인(액션., pagename) 현지의 직함 한다면 유형(pagename) == '테이블' 그리고. pagename.프리픽스본문 그리고나서 직함 = pagename 그렇지 않으면 pagename 그리고나서 직함 = mw.직함.신규(pagename) 또 다른 직함 = mw.직함.get Current Title(전류 제목)() 끝. pagename = 직함.프리픽스본문 한다면 액션. == '자동 보기' 그리고나서 현지의 수평 = mw.익스텐트.플래그 부착 리비전.안정성의 확보설정(직함) 수평 = 수평 그리고. 수평.자동 확인 한다면 수평 == '리뷰' 그리고나서 돌아가다 '실패' 그렇지 않으면 수평 ~= '' 그리고나서 돌아가다 수평 또 다른 돌아가다 제로 --'*'가 아닙니다.PC로 보호되지 않는 페이지는 누구나 리뷰할 수 있는 PC로 보호되는 페이지와는 다릅니다.또한 '가 아닙니다. 이는 PC로 보호되지만 아무도 리뷰할 수 없습니다. 끝. 그렇지 않으면 액션. ~= '편집' 그리고. 액션. ~= '이동 그리고. 액션. ~= '작성' 그리고. 액션. ~= '실패' 그리고. 액션. ~= '완전' 그리고나서 에러( '첫 번째 매개 변수는 편집, 이동, 생성, 업로드, 삭제 취소, 자동 보기 중 하나여야 합니다.', 2 ) 끝. 한다면 직함.네임스페이스 == 8 그리고나서 -- MediaWiki 네임스페이스 한다면 직함.본문:후보선수(-3) == '.display' 또는 직함.본문:후보선수(-4) == '.css' 또는 직함.콘텐츠 모델 == '스크립트 삭제' 또는 직함.콘텐츠 모델 == 'css' 그리고나서 -- 사이트 JS 또는 CSS 페이지 돌아가다 'interfaceadmin' 또 다른 -- JS/CSS 이외의 MediaWiki 페이지 돌아가다 'sysop' 끝. 그렇지 않으면 직함.네임스페이스 == 2 그리고. 직함.서브페이지 그리고나서 한다면 직함.콘텐츠 모델 == '스크립트 삭제' 또는 직함.콘텐츠 모델 == 'css' 그리고나서 -- 사용자 JS 또는 CSS 페이지 돌아가다 'interfaceadmin' 그렇지 않으면 직함.콘텐츠 모델 == 'json' 그리고나서 -- 사용자 JSON 페이지 돌아가다 'sysop' 끝. 끝. 한다면 액션. == '완전' 그리고나서 돌아가다 'sysop' 끝. 현지의 수평 = 직함.보호.레벨[액션.] 그리고. 직함.보호.레벨[액션.][1] 한다면 수평 == 'sysop' 또는 수평 == '편집 보호' 그리고나서 돌아가다 'sysop' 그렇지 않으면 직함.캐스케이드 보호.제약 사항[액션.] 그리고. 직함.캐스케이드 보호.제약 사항[액션.][1] 그리고나서 -- 계단식으로 보호된 페이지에 의해 사용됩니다. 돌아가다 'sysop' 그렇지 않으면 수평 == '편집자' 그리고나서 돌아가다 '편집자' 그렇지 않으면 액션. == '이동 그리고나서 현지의 블랙리스트 엔트리 = mw.익스텐트.제목 블랙리스트.시험('편집', pagename) -- 테스트 수행 편집은 원본 페이지에 대한 것이므로 정확합니다.대상 페이지 이름은 작업 이동을 통해 테스트됩니다. 한다면 블랙리스트 엔트리 그리고. 것은 아니다. 블랙리스트 엔트리.파라미터.자동 확인됨 그리고나서 돌아가다 '편집자' 그렇지 않으면 직함.네임스페이스 == 6 그리고나서 돌아가다 '파일오버' 그렇지 않으면 수평 == '확정되지 않음' 그리고나서 돌아가다 '확정되지 않음' 또 다른 돌아가다 '자동 확인됨' 끝. 끝. 현지의 블랙리스트 엔트리 = mw.익스텐트.제목 블랙리스트.시험(액션., pagename) 한다면 블랙리스트 엔트리 그리고나서 한다면 것은 아니다. 블랙리스트 엔트리.파라미터.자동 확인됨 그리고나서 돌아가다 '편집자' 그렇지 않으면 수평 == '확정되지 않음' 그리고나서 돌아가다 '확정되지 않음' 또 다른 돌아가다 '자동 확인됨' 끝. 그렇지 않으면 수평 == '편집 반보호' 그리고나서 -- create-semiprotected 페이지는 어떤 이유로 이 값을 반환합니다. 돌아가다 '자동 확인됨' 그렇지 않으면 수평 그리고나서 돌아가다 수평 그렇지 않으면 액션. == '실패' 그리고나서 돌아가다 '자동 확인됨' 그렇지 않으면 액션. == '작성' 그리고. 직함.네임스페이스 % 2 == 0 그리고. 직함.네임스페이스 ~= 118 그리고나서 -- 초안 이외의 비토크 페이지를 작성하려면 자동 확인이 아닌 등록이 필요합니다. 돌아가다 '사용자' 또 다른 돌아가다 '*' 끝. 끝. 설정 가능한(p, { __인덱스 = 기능.(t, k) 돌아가다 기능.(틀) 돌아가다 t.메인(k, 틀.args[1]) 끝. 끝. }) 돌아가다 p