рд╡реЗ рджрд┐рди рд╣реЛрддреЗ рд╣реИрдВ рдЬрдм рдкреНрд░рддреНрдпреЗрдХ рд╡реИрд╕реБрд╕реНрд╕рд▓реА Sverdyshchenko рдХреЗ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдкреГрд╖реНрда рдкрд░ рдкреНрд░рддреНрдпреЗрдХ рдлреЛрд░рдо рдХреЛ рдПрдХ рдЕрд▓рдЧ рдкрдВрдЬреАрдХрд░рдг рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред
рд╣рдореЗрдВ рдзреАрд░реЗ-рдзреАрд░реЗ рдЗрд╕ рддрдереНрдп рдХреА рдЖрджрдд рд╣реЛ рд░рд╣реА рд╣реИ рдХрд┐ рдЖрдк рд╣рдорд╛рд░реЗ OpenID / OAuth рдкреНрд░рджрд╛рддрд╛ рдХреА рдУрд░ рд╕реЗ рд▓рдЧрднрдЧ рд╣рд░ рдЬрдЧрд╣ рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЫреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЯреНрд╡рд┐рдЯрд░ / рдлреЗрд╕рдмреБрдХ / Google / Yandex / Vkontakte рдХреЗ рдПрдВрдб-рдЯреВ-рдПрдВрдб рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдХреЗ рд▓рд┐рдП рдкреНрд▓рдЧ-рдЗрди рд╕рднреА рд▓реЛрдХрдкреНрд░рд┐рдп рд╕реАрдПрдордПрд╕ рдХреЗ рд▓рд┐рдП рд▓рдВрдмреЗ рд╕рдордп рд╕реЗ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛,
DISQUS рд╣реИ ... рд▓реЗрдХрд┐рди рдХреНрдпрд╛ рд╣реЛрдЧрд╛ рдпрджрд┐ рд╣рдо рдХрд┐рд╕реА рддреГрддреАрдп-рдкрдХреНрд╖ рд╕реЗрд╡рд╛ рдХреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдЕрдкрдиреА рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ рдПрдХ рдЕрд▓рдЧ рдЦрд╛рддрд╛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд┐рдП рдмрд┐рдирд╛ рдХреБрдЫ рдЕрддрд┐рд░рд┐рдХреНрдд рдЕрдзрд┐рдХрд╛рд░ рджреЗрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ? рдЦрд╛рд╕рдХрд░ рдЕрдЧрд░ рд╣рдорд╛рд░реЗ рд╕реАрдПрдордПрд╕ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдЪрдорддреНрдХрд╛рд░ рдкреНрд▓рдЧрдЗрди рдирд╣реАрдВ рд╣реИ?
рдореИрдВ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реВрдБрдЧрд╛ рдХрд┐ рдХреИрд╕реЗ рдЬрд▓реНрджреА рдФрд░ рджрд░реНрдж рд░рд╣рд┐рдд рддрд░реАрдХреЗ рд╕реЗ рдПрдХ рд╡рд┐рджреЗрд╢реА рд╕реАрдПрдордПрд╕ рдХреЛ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдмрд╛рдБрдзреЗрдВ рдФрд░ рд░рд╛рд╕реНрддреЗ рдореЗрдВ рдХрд┐рд╕ рддрд░рд╣ рдХреЗ рдкрд╛рдиреА рдХреЗ рдиреАрдЪреЗ рд░реЗрдХ рд╣реИрдВред

рд╕рд╛рдордЧреНрд░реА
рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдореИрдВ CMS
Xaraya рдореЗрдВ
рдЯреНрд╡рд┐рдЯрд░ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреНрд░рд╛рдзрд┐рдХрд░рдг
рдЪреБрдиреВрдВрдЧрд╛ ред рдкреНрд░рджрд╛рддрд╛ рдХреА рдкрд╕рдВрдж рдЗрд╕рдХреА рд▓реЛрдХрдкреНрд░рд┐рдпрддрд╛ рд╕реЗ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд╣реЛрддреА рд╣реИред рдпрд╣ рд╕реАрдПрдордПрд╕ рддреАрди рдХрд╛рд░рдгреЛрдВ рд╕реЗ рд╣реИ: рдореБрдЭреЗ рдпрд╣ рдкрд╕рдВрдж рд╣реИ, рдпрд╣ рдмрд╣реБрдд рдХрдо рдЬреНрдЮрд╛рдд рд╣реИ (рдФрд░, рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рд╕реНрд╡-рд▓рд┐рдЦрд┐рдд рдПрдХ рд╕реЗ рдереЛрдбрд╝рд╛ рдЕрд▓рдЧ рд╣реИ) рдФрд░, рдЕрдВрдд рдореЗрдВ, рдЗрд╕реЗ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ (рдЗрд╕рдХрд╛ рдХреНрдпрд╛ рдХрд░рдирд╛ рд╣реИ - рдпрд╣ рдереЛрдбрд╝реА рджреЗрд░ рдмрд╛рдж рд╕реНрдкрд╖реНрдЯ рд╣реЛ рдЬрд╛рдПрдЧрд╛)ред
рдЬрд╝рд╛рд░рд╛рдпрд╛ рдХреА рдПрдорд╡реАрд╕реА рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдРрд╕реА рд╣реИ рдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рдкреГрд╖реНрда рдХреЗ рд╕рднреА рддрддреНрд╡ рд╕рдВрджрд░реНрдн рдХреЗ рдкреНрд░рддрд┐ рд╕рдВрд╡реЗрджрдирд╢реАрд▓ рд╣реИрдВред рдкреНрд░рддреНрдпреЗрдХ рдореЙрдбреНрдпреВрд▓ рдореБрдЦреНрдп рд╕рд╛рдордЧреНрд░реА (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП: рдмреНрд▓реЙрдЧ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпреЛрдВ, рд╡реНрдпрдХреНрддрд┐рдЧрдд рдмреНрд▓реЙрдЧ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпреЛрдВ рдХрд╛ рдлрд╝реАрдб), рдФрд░ рдЗрд╕реА рддрд░рд╣ рджреЛрдиреЛрдВ рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛ рд╕рдХрддрд╛ рд╣реИ (рдпрд╛ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реИ)ред "рдмреНрд▓реЙрдХ", рдЖрдорддреМрд░ рдкрд░ рд╕рд╛рдЗрдб рдХреЙрд▓рдо рдореЗрдВ рдПрдореНрдмреЗрдбреЗрдб рд╣реЛрддрд╛ рд╣реИ рдФрд░ рдЕрдиреНрдп рдореЙрдбреНрдпреВрд▓ рджреНрд╡рд╛рд░рд╛ рдЙрддреНрдкрдиреНрди рдХрд┐рд╕реА рднреА рдЕрдиреНрдп рд╕рд╛рдордЧреНрд░реА рдХреЗ рдмрдЧрд▓ рдореЗрдВ рджрд┐рдЦрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдореИрдВ рдпрд╣рд╛рдБ рдХреНрд░реВрд╕ рдкрд░ рдЪрдврд╝рд╛ рд░рд╣рд╛ рд╣реВрдБ - рд▓рдЧрднрдЧ рд╕рднреА рд╕реАрдПрдордПрд╕ рдЗрддрдиреЗ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рд╣реИрдВред рдореИрдВ рдХреЗрд╡рд▓ рдПрдХ рдЖрд░рдХреНрд╖рдг рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рдХреЛрдб рдореЗрдВ рдПрдХреНрд╕рд░рд╛рдпрд╛ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдХрд╛рд░реНрдп рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╣реИрдВ - рд╡реЗ рд╕рднреА рдЙрдкрд╕рд░реНрдЧ "
xar
" рд╕реЗ рд╢реБрд░реВ рд╣реЛрддреЗ рд╣реИрдВ рдФрд░ рдирд╛рдо рд╣рдореЗрд╢рд╛ рджрд┐рдЦрд╛рддрд╛ рд╣реИ рдХрд┐ рд╡реЗ рдХреНрдпрд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдпрд╣ рддрдВрддреНрд░ рдХреА рд╕рдордЭ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред
рд╣рдорд╛рд░рд╛ рдореЙрдбреНрдпреВрд▓ рдХреЛрдИ "рдореБрдЦреНрдп" рд╕рд╛рдордЧреНрд░реА рдкреНрд░рджрд░реНрд╢рд┐рдд рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред рдЗрд╕рдореЗрдВ рдПрдХ рдмреНрд▓реЙрдХ рд╣реЛрдЧрд╛, рдЬрд┐рд╕рдореЗрдВ рдпрд╛ рддреЛ рдПрдХ рдмрдЯрди рд╣реЛрдЧрд╛ (рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рдкрд╛рд╕ рд▓реЙрдЧрд┐рди рдирд╣реАрдВ рд╣реИ):

рдпрд╛ рд▓реЙрдЧрд┐рди рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХрд╛ рд╡реНрдпрд╡рд╕рд╛рдп рдХрд╛рд░реНрдб:

рд╡рд┐рдзрд┐
рд╣рдо рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╡реНрдпрд╡рд╣рд╛рд░ рдкреНрд░рджрд╛рди рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ:
- рдпрджрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд▓реЙрдЧ рдЗрди рдирд╣реАрдВ рд╣реИ - "рдЯреНрд╡рд┐рдЯрд░ рдХреЗ рд╕рд╛рде рд▓реЙрдЧрд┐рди" рдмрдЯрди рджрд┐рдЦрд╛рдПрдВ;
- рдЕрдЧрд░ рд╣рдореЗрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХрд╛ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ - рдЙрд╕рдХрд╛ рд╡реНрдпрд╡рд╕рд╛рдп рдХрд╛рд░реНрдб рджрд┐рдЦрд╛рдПрдВ;
- рдпрджрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкрд╣рд▓реА рдмрд╛рд░ рд▓реЙрдЧ рдЗрди рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИ - рддреЛ рдкрд╛рд░рджрд░реНрд╢реА рд░реВрдк рд╕реЗ рд╣рдорд╛рд░реЗ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдПрдХ "рд╕рд░реЛрдЧреЗрдЯ" рдЦрд╛рддрд╛ рдмрдирд╛рдПрдВ рдФрд░ рд╣рдорд╛рд░реЗ рд╕реАрдПрдордПрд╕ рдХреА рд╕реНрдерд┐рддрд┐ рдкрд░ рдирд┐рдпрдВрддреНрд░рдг рджреЗрдВ;
- рдпрджрд┐ рдпрд╣ рдлрд┐рд░ рд╕реЗ рд▓реЙрдЧрд┐рди рд╣реИ (рд╕рддреНрд░ рдЦрд░рд╛рдм рд╣реЛ рдЧрдпрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрд╛ рдЙрд╕рдиреЗ рд╕реНрд╡рдпрдВ "рдмрд╛рд╣рд░ рдирд┐рдХрд▓реЗрдВ" рдкрд░ рдХреНрд▓рд┐рдХ рдХрд┐рдпрд╛ рд╣реИ) - рд╣рдорд╛рд░реЗ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдЕрдкрдиреЗ рдЯреНрд╡рд┐рдЯрд░ рдЦрд╛рддреЗ рд╕реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдбреЗрдЯрд╛ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░реЗрдВ рдФрд░ рдЗрд╕реЗ рд▓реЙрдЧрд┐рди рдХрд░реЗрдВред
рдореБрдЦреНрдп рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐
OAuth рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐рд╕реА рддреАрд╕рд░реЗ рдкрдХреНрд╖ рдХреА рд╕рд╛рдЗрдЯ рдкрд░ рдбрдмрд▓ рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рди (рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдкреНрд░рджрд╛рддрд╛ рдХреА рд╕рд╛рдЗрдЯ, рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ
twitter.com )ред рдЗрд╕рд▓рд┐рдП, рд╣рдорд╛рд░реЗ рд╕реАрдПрдордПрд╕ рдХреЗ рдмреНрд▓реЙрдХ рд╕реЗ, рдпрд╣ рдмрд╕ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдкреНрд░рджрд░реНрд╢рди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ - рдЯреЛрдХрди рдФрд░ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдореЗрдВ рдЬрд╛рдиреЗ рдХреЗ рдмрд╛рдж, рд╡рд░реНрддрдорд╛рди рд╕рддреНрд░ рдХрд╛ рд╕рдВрджрд░реНрдн рдЦреЛ рдЬрд╛рдПрдЧрд╛ред рддреЛ, рдЖрдкрдХреЛ рдкреЙрдк-рдЕрдк рд╡рд┐рдВрдбреЛ рдХреЗ рд╕рд╛рде рдмрд┐рдЧрд╛рдбрд╝рдирд╛ рд╣реЛрдЧрд╛ (рдореБрдЭреЗ рдкрддрд╛ рд╣реИ, рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдмрджрд╕реВрд░рдд рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВ рдХреНрдпрд╛ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ ...)ред
рдЦрд╛рдирд╛ рдкрдХрд╛рдиреЗ рдХреА рд╡рд┐рдзрд┐
рдореЗрд░рд╛ рд╕реАрдПрдордПрд╕ рд▓реЙрдЧрд┐рди рдХреЗ рд▓рд┐рдП рд╕рд░рд▓ рд╡рд╛рдВрдбрд░рд░реНрд╕ рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЕрд▓рдЧ-рдЕрд▓рдЧ рдмреНрд▓реЙрдХ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рджрд┐рдЦрд╛ рд╕рдХрддрд╛ рд╣реИред
рдЪрд▓реЛ рд╕рд░рд▓рддрдо рд╕реЗ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ - рдЪрд▓реЛ рднрдЯрдХрдиреЗ рд╡рд╛рд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдмреНрд▓реЙрдХ рдЯреЗрдореНрдкрд▓реЗрдЯ рдмрдирд╛рддреЗ рд╣реИрдВред рдЗрд╕рдореЗрдВ рдХреЗрд╡рд▓ рдПрдХ рдмрдЯрди рд╣реЛрдЧрд╛, рдФрд░ рдереЛрдбрд╝реА рд╕реНрдХреНрд░рд┐рдкреНрдЯ:
<img src="/modules/authtwitter/xarimages/darker.png" alt="Sign in with Twitter" style="cursor:pointer;" onclick="popUp('#$url#');" id="loginBtn"/>
popUp
рдлрд╝рдВрдХреНрд╢рди, рдЕрдЬреАрдм рддрд░рд╣ рд╕реЗ рдкрд░реНрдпрд╛рдкреНрдд рд╣реИ, рдПрдХ рдкреЙрдк-рдЕрдк рд╡рд┐рдВрдбреЛ рдЦреЛрд▓реЗрдЧрд╛ рдЬрд┐рд╕рдореЗрдВ рд╣рдо рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдХреЗ рдПрдХ рдХрд╛рдВрдЯреЗрджрд╛рд░ рд░рд╛рд╕реНрддреЗ рдкрд░ рдЬрд╛рдПрдВрдЧреЗред рдореИрдВрдиреЗ
рдЕрдмреНрд░рд╛рд╣рдо рд╡рд┐рд▓рд┐рдпрдореНрд╕ рд╕реЗ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдХреЛрдб рдЙрдзрд╛рд░ рд▓рд┐рдпрд╛, рдпрд╣
рдЯреНрд╡рд┐рдЯрд░ рдПрдкреАрдЖрдИ рд╡рд┐рдХреА рдкрд░ рд╣реИ ред рд╣рдорд╛рд░рд╛ рдкрд╣рд▓рд╛ рд╕реНрддрд░ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:
require_once(dirname(__FILE__) . '/../libs/twitteroauth/twitteroauth.php'); require_once(dirname(__FILE__) . '/../libs/twitteroauth/config.php'); $connection = new TwitterOAuth(CONSUMER_KEY, CONSUMER_SECRET); $request_token = $connection->getRequestToken(OAUTH_CALLBACK); xarSessionSetVar('oauth_token', $request_token['oauth_token']); xarSessionSetVar('oauth_token_secret', $request_token['oauth_token_secret']); switch ($connection->http_code) { case 200: $url = $connection->getAuthorizeURL($request_token); header('Location: ' . $url);
рдЯреНрд╡рд┐рдЯрд░ рд╣рдореЗрд╢рд╛ рдХреЗ рд▓рд┐рдП рдкреНрд░рддреНрдпреЗрдХ рдПрдкреНрд▓рд┐рдХреЗрд╢рди (рдФрд░ рдЙрдирдХреЗ рд▓рд┐рдП рд╣рдорд╛рд░рд╛ рд╕реАрдПрдордПрд╕ рдЖрд╡реЗрджрди рд╣реИ) рдХреЗ рд▓рд┐рдП рдкреНрд░рд╛рдзрд┐рдХрд░рдг рд╕реНрдЯреЛрд░ рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрджрд┐ рдХрд┐рд╕реА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдиреЗ рд╣рдорд╛рд░реА рд╕рд╛рдЗрдЯ рдкрд░ рдХрдо рд╕реЗ рдХрдо рдПрдХ рдмрд╛рд░ рдкрдВрдЬреАрдХрд░рдг рдХрд┐рдпрд╛ рд╣реИ, рддреЛ рд╕рдВрдХреНрд░рдордг рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрдирдкреБрдЯ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрдЧреАред рдЕрдЧрд░ рдпрд╣ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдкрд╣рд▓рд╛ рд▓реЙрдЧрд┐рди рдкреНрд░рдпрд╛рд╕ рд╣реИ, рддреЛ рдЯреНрд╡рд┐рдЯрд░ рдорд╛рдирдХ Allow / Deny рдХреЗ рд▓рд┐рдП рдкреВрдЫреЗрдЧрд╛ред рдФрд░ рдЕрдЧрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЯреНрд╡рд┐рдЯрд░ рдореЗрдВ рд▓реЙрдЧ рдЗрди рдирд╣реАрдВ рд╣реИ, рддреЛ рдЙрдиреНрд╣реЗрдВ рдкрд╣рд▓реЗ рд▓реЙрдЧрд┐рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣рд╛ рдЬрд╛рдПрдЧрд╛ред рдЗрд╕ рд╕рдм рдХреЗ рдмрд╛рдж, рдпрджрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ "рдЕрдиреБрдорддрд┐ рджреЗрдВ" рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рддрд╛ рд╣реИ, рддреЛ рд╣рдо рдЙрд╕ рдкрддреЗ рдкрд░ рдПрдХ рд░рд┐рд╡рд░реНрд╕ рд░реАрдбрд╛рдпрд░реЗрдХреНрдЯ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВрдЧреЗ рдЬреЛ рд╣рдордиреЗ
getRequestToken
рдХреЛ рджрд┐рдпрд╛ рдерд╛ред рдЗрд╕реЗ рдХреИрд╕реЗ рд╕рдВрднрд╛рд▓рдирд╛ рд╣реИ:
require_once(dirname(__FILE__) . '/../libs/twitteroauth/twitteroauth.php'); require_once(dirname(__FILE__) . '/../libs/twitteroauth/config.php'); if ( isset($_REQUEST['oauth_token']) && xarSessionGetVar('oauth_token') !== $_REQUEST['oauth_token'] ) { xarSessionSetVar('oauth_status', 'oldtoken'); xarRedirectUrl('тАж'); } $connection = new TwitterOAuth( CONSUMER_KEY, CONSUMER_SECRET, xarSessionGetVar('oauth_token'), xarSessionGetVar('oauth_token_secret') ); $access_token = $connection->getAccessToken($_REQUEST['oauth_verifier']); switch ($connection->http_code) { case 200:
рдЕрдм рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдЦрдЬрд╛рдирд╛ рд╣реИ -
рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдбреЗрдЯрд╛ рдЬреЛ рдЯреНрд╡рд┐рдЯрд░ рдиреЗ рд╣рдореЗрдВ рджрд┐рдпрд╛ред рдпрд╣ рд╣рдорд╛рд░реЗ рдЖрд╡реЗрджрди рдкрд░ рдЙрдиреНрд╣реЗрдВ рд╡рд╛рдкрд╕ рдХрд░рдиреЗ рдХрд╛ рд╕рдордп рд╣реИ:
if(window.opener != null && !window.opener.closed) { window.opener.setCredentials(<?php echo json_encode($content); ?>); }
рд╣рд╛рдБред рдЕрдм рдЖрдкрдХреЗ рдЕрдкрдиреЗ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдкреНрд░рдгрд╛рд▓реА рдХреЗ рд╕рд╛рде рдЫреЗрдбрд╝рдЫрд╛рдбрд╝ рдХрд░рдиреЗ рдХрд╛ рд╕рдордп рд╣реИред
рдЧреМрд░реИрдпрд╛, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЖрдУ
рддреЛ, рд╣рдорд╛рд░реЗ рдмреНрд▓реЙрдХ рдХреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рд╣реБрдЖред рдкрд╣рд▓реА рдЪреАрдЬреЗрдВ рдкрд╣рд▓реЗ - рдКрдм рдкреЙрдк-рдЕрдк рд╡рд┐рдВрдбреЛ рдХреЛ рдмрдВрдж рдХрд░реЗрдВред рддрдм - рдкреНрд░рд╛рдкреНрдд рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдЫрджреНрдо рд░реВрдк (рдпрд╛ рдмрд▓реНрдХрд┐, рдЫрд┐рдкрд╛ рд╣реБрдЖ рдлрд╝реЙрд░реНрдо) рднрд░реЗрдВ рдФрд░ рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд╛рдПрдВ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╣рдорд╕реЗ рдкрд░рд┐рдЪрд┐рдд рд╣реИ, рдпрд╛ рдпрджрд┐ рд╣рдореЗрдВ рдЕрднреА рднреА рдЙрд╕реЗ рдЕрдкрдиреЗ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдкрдВрдЬреАрдХреГрдд рдХрд░рдирд╛ рд╣реИ:
function setCredentials(content) { if (popUpObj) { popUpObj.close(); popUpObj = null; } if (content && content.screen_name) { document.getElementById("name").value = content.name; document.getElementById("screenname").value = content.screen_name; document.getElementById("profileimageurl").value = content.profile_image_url; document.getElementById("url").value = content.url; document.getElementById("statustext").value = content.status.text; document.getElementById("description").value = content.description; document.getElementById("profiletextcolor").value = content.profile_text_color; document.getElementById("profilelinkcolor").value = content.profile_link_color; document.getElementById("profilebordercolor").value = content.profile_sidebar_border_color; document.getElementById("doAuthForm").submit(); } }
рд╣рдореЗрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд╡реНрдпрд╡рд╕рд╛рдп рдХрд╛рд░реНрдб рдХреЛ рдЙрд╕рдХреЗ рдкрд╕рдВрджреАрджрд╛ рд░рдВрдЧреЛрдВ рдореЗрдВ рдЦреАрдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдЗрди рд╕рднреА рдбреЗрдЯрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдкреНрд░рдкрддреНрд░, рд╕рд╛рджреЗ HTML рджреНрд╡рд╛рд░рд╛ рдкрд╣рд▓реЗ рд╕реЗ рддреИрдпрд╛рд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдпрд╣ рд╡рд╣ рдЬрдЧрд╣ рд╣реИ рдЬрд╣рд╛рдБ
submit
рд╣реЛрдЧрд╛:
extract($args); $user_info = array( 'pass' => $pass, 'screenname' => $screenname, 'name' => $name, 'statustext' => $statustext, 'profileimageurl' => $profileimageurl, 'url' => $url, 'description' => $description, 'profiletextcolor' => $profiletextcolor, 'profilelinkcolor' => $profilelinkcolor, 'profilebordercolor' => $profilebordercolor );
рдореЗрд╣рдорд╛рдиреЛрдВ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдореЗрдВ
рдЕрдм рд╣рдореЗрдВ рдмрд╕ рдЗрд╕ рддрдереНрдп рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рдХрд░рдирд╛ рд╣реИ рдХрд┐ рд╕реАрдПрдордПрд╕ рд╣рдорд╛рд░реЗ рдмреНрд▓реЙрдХ рдХреЗ рдЯреЗрдореНрдкрд▓реЗрдЯ рдХреЛ рджреВрд╕рд░реЗ рд╡рд┐рдХрд▓реНрдк рдореЗрдВ рдмрджрд▓рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИ: рд▓реЙрдЧрд┐рди рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд▓рд┐рдПред рдореИрдВ рдЗрд╕ рдХреЛрдб рдХреЛ рдорд╛рдирд╡реАрдп рд░реВрдк рд╕реЗ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЖрд▓рд╕реА рдерд╛, рд╕рднреА рд╕рдорд╛рди, рд╣рдордиреЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕рднреА рддрд░реНрдХ рдХрд╛рдо рдХрд┐рдПред рдЬрдЬ рд╕рдЦреНрддреА рд╕реЗ :-)
<div id="twCredentials" class="twcredentials"> <img id="twPhoto" class="twphoto" src="#$user_info['profileimageurl']#"/> <span class="twlogout cuprum"> <a href="&xar-modurl-authsystem-user-logout;"> <xar:mlstring>Logout</xar:mlstring> </a> </span> <img id="twServiceLogo" class="twservicelogo" src="/i/twitbird.png" /> <span id="twScreenName" class="twscreenname cuprum"> <a href="http://twitter.com/#$user_info['screenname']#"> #$user_info['screenname']# </a> </span> <br/> <span id="twName" class="twname ubuntu"> <xar:if condition="empty($user_info['url'])"> #$user_info['name']# <xar:else /> <a href="#$user_info['url']#">#$user_info['name']#</a> </xar:if> </span> <div class="twdescription ubuntu"> <span id="twDescription"> <xar:if condition="empty($user_info['statustext'])"> #$user_info['description']# <xar:else /> #$user_info['statustext']# </xar:if> </span> </div> </div>
рдореИрдВ рджреЛрд╣рд░рд╛рддрд╛ рд╣реВрдВ, рдЕрдм рд╣рдореЗрдВ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рджреЗрдЦрдирд╛ рдЪрд╛рд╣рд┐рдП:

рдЕрдзрд┐рдХ рд╡реНрдпрдВрдЬрдиреЛрдВ