рдореЗрд░реЗ рдорд┐рддреНрд░ рдФрд░ рдореИрдВрдиреЗ рдПрдХ рд╕реЗрд╡рд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪрд╛, рд╣рдордиреЗ рдЗрд╕реЗ MODx рдХреНрд░рд╛рдВрддрд┐ рдкрд░ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ред рдЗрд╕ рдирд┐рд░реНрдгрдп рдХреЗ рдХрд╛рд░рдг, рд╕рд╛рде рд╣реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╕реНрд╡рдпрдВ рдЗрд╕ рд▓реЗрдЦ рдХреЗ рджрд╛рдпрд░реЗ рд╕реЗ рдмрд╣реБрдд рджреВрд░ рд╣реИ, рд╢рд╛рдпрдж (рдЖрд╡рд╢реНрдпрдХ рд░реВрдк рд╕реЗ рдкрдврд╝реЗрдВ) рдореИрдВ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдж рдореЗрдВ рд▓рд┐рдЦреВрдВрдЧрд╛ред рдЖрдЬ рдореИрдВ рдмрддрд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХреИрд╕реЗ рдХрд┐рдпрд╛ рдЧрдпрд╛ред
рдЗрд╕рд▓рд┐рдП, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд╕рдВрджреЗрд╢реЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ "рд╕рд╛рдорд╛рдЬрд┐рдХ" рддрддреНрд╡ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред MODx рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рдПрдб-рдСрди рдХреА рдЦреЛрдЬ рдиреЗ рдХреБрдЫ рднреА рд╕рдордЭрджрд╛рд░ рдирд╣реАрдВ рджрд┐рдпрд╛, рдЬреИрд╕рд╛ рдХрд┐ рдЗрд╕ рд╡рд┐рд╖рдп рдкрд░ рдЧреБрдЧрд▓реА рдХрд░рдирд╛ рдерд╛ред рд╕рдЪ рд╣реИ, рдЕрднреА рднреА рдХреБрдЫ рдЭрд▓рдХрд┐рдпрд╛рдБ
рдереАрдВ , рд▓реЗрдХрд┐рди рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЧрд▓рдд рджрд┐рд╢рд╛ рдореЗрдВред рдЦреИрд░, рдореИрдВ рдЕрдиреНрдп рдЙрджреНрджреЗрд╢реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдВрд╕рд╛рдзрдиреЛрдВ (рдЬреЛ рджрд╕реНрддрд╛рд╡реЗрдЬреЛрдВ) рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ред рдФрд░ рдлрд┐рд░ рдореИрдВрдиреЗ рджреЗрдЦрд╛ рдХрд┐ MODx рдореЗрдВ, рдЬрд┐рд╕реЗ "рдЖрдЙрдЯ рдСрдл рдж рдмреЙрдХреНрд╕" рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдПрдХ рд╕рдВрджреЗрд╢ рдкреНрд░рдгрд╛рд▓реА рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд▓рд╛рдЧреВ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдПрдХ рдЫреЛрдЯрд╛ "рд▓реЗрдХрд┐рди" рд╣реИ: рдЖрдк рдЙрдиреНрд╣реЗрдВ рдХреЗрд╡рд▓ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдкреИрдирд▓ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрд╣рд╛рдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдмрд┐рд▓реНрдХреБрд▓ рднреА рдРрд╕рд╛ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдлреНрд░рдВрдЯрдПрдВрдб рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рд╕реНрдирд┐рдкреЗрдЯреНрд╕ рдХрд╛ рдПрдХ рд╕рдВрдХреЗрдд рднреА рдирд╣реАрдВред рдпрд╣ рддрдм рдерд╛ рдЬрдм рдореИрдВрдиреЗ рдЧрд╣рд░реА рдЦреБрджрд╛рдИ рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ред
1. рд╣рдореЗрдВ рдХреНрдпрд╛ рдХрд░рдирд╛ рд╣реИ
рддреЛ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреНрдпрд╛ рд╣реИред MODx рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рддрд╛рд▓рд┐рдХрд╛ modx_user_messages рдФрд░ рд╕рдВрдмрдВрдзрд┐рдд xPDO рд╡рд░реНрдЧ modUserMessage рд╕рдорд╛рд╣рд┐рдд рд╣реИред рд╕рд┐рджреНрдзрд╛рдВрдд рд░реВрдк рдореЗрдВ, рдХреБрдЫ рднреА рд╣рдореЗрдВ рд╣рдорд╛рд░реЗ рд╕рдВрджреЗрд╢ рдкреНрд░рдгрд╛рд▓реА рдХреЗ рд▓рд┐рдП рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рд░реЛрдХрддрд╛ рд╣реИ, рдЬреЛ рд╣рдо рдХрд░реЗрдВрдЧреЗред
рд╡рд░реНрдЧ рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдХреЗ рд▓рд┐рдП, рддрд░реАрдХреЗ getObject, getCollection, newObject рдФрд░ рдЕрдиреНрдп рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬреЛ рд╣рдореЗрдВ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИред
рд╣рд╛рдВ, рдФрд░ рд╕рдВрджреЗрд╢реЛрдВ рдХреА рдЧреЛрдкрдиреАрдпрддрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рд╢рдмреНрдж, рдлрд┐рд░ рднреА рд╡реЗ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд╣реИрдВ рдФрд░ рдкрддреЗ рд╡рд╛рд▓реЗ рдХреЛ рдЫреЛрдбрд╝рдХрд░ рдХрд┐рд╕реА рдХреЛ рджрд┐рдЦрд╛рдИ рдирд╣реАрдВ рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдПред рдЗрд╕рд▓рд┐рдП, рдЖрдкрдХреЛ рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ рд╣рдорд╛рд░реА рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ (MODx рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рдПрдХ рдЕрджреНрднреБрдд рд▓реЙрдЧрд┐рди рдкреИрдХреЗрдЬ рд╣реИ, рдФрд░ рдЗрд╕ рд╡рд┐рд╖рдп рдкрд░ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рд╛рдкреНрдд
рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реИ )ред
рдпреБрдкреАрдбреАред рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рд▓реЗрдЦ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рдиреЗ рдХрд╛ рд╕рдордп рдирд╣реАрдВ рдерд╛, рдХреНрдпреЛрдВрдХрд┐ рдЖрдЬ рдЗрд╕ рд╡рд┐рд╖рдп рдкрд░
рдкреНрд░рдХрд╛рд╢ рдбрд╛рд▓рд╛ рдЧрдпрд╛ рдерд╛ред
2. рд╕рдВрджреЗрд╢ рдкрдврд╝рдирд╛ рд╕реАрдЦрдирд╛
рдЖрдЗрдП рд╕рд░рд▓ рд╕реЗ рдЬрдЯрд┐рд▓ рдкрд░ рдЬрд╛рдПрдВред рдорд╛рди рд▓реЗрдВ рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдкреНрд░рдгрд╛рд▓реА рд╣реИ рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд░рдЬрд┐рд╕реНрдЯрд░ рдФрд░ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рд▓реЙрдЧ рдЗрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдареАрдХ рд╣реИ, рдЪрд▓реЛ рдПрдХ рдЗрдирдмреЙрдХреНрд╕ рдкреГрд╖реНрда рдмрдирд╛рддреЗ рд╣реИрдВ рдЬреЛ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд▓рд┐рдП рдЖрдиреЗ рд╡рд╛рд▓реЗ рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдЧрд╛ред
рд╣рдо рдПрдХ рдирдпрд╛ рд╕рдВрд╕рд╛рдзрди рдмрдирд╛рддреЗ рд╣реИрдВ рдФрд░
рдЗрд╕реЗ рдХреЗрд╡рд▓ рдкрдВрдЬреАрдХреГрдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП
рдПрдХреНрд╕реЗрд╕ рдЕрдзрд┐рдХрд╛рд░ рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВ рддрд╛рдХрд┐ рдЕрдирдзрд┐рдХреГрдд "рд░рд╛рд╣рдЧреАрд░реЛрдВ" рдХреЛ рднреА рдЗрд╕ рдкреГрд╖реНрда рдкрд░ рд╕рдВрджреЗрд╣ рди рд╣реЛред рдлрд┐рд░, рдореИрдВ рдЗрд╕ рдмрд┐рдВрджреБ рдкрд░ рдирд╣реАрдВ рд░рд╣реВрдВрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рд▓реЗрдЦ рдЙрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рд╣реИред
MODx рдореЗрдВ, рдХрд┐рд╕реА рднреА рдЪрдВрдХ рдпрд╛ рд╕рдВрд╕рд╛рдзрди рдореЗрдВ, рдПрдХ рдкреНрд▓реЗрд╕рд╣реЛрд▓реНрдбрд░ [[+ modx.user.id]] рдЙрдкрд▓рдмреНрдз рд╣реИ, рдЬреЛ рд╡рд░реНрддрдорд╛рди рд▓реЙрдЧ-рдЗрди рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреА рдЖрдИрдбреА рд╡рд╛рдкрд╕ рдХрд░ рджреЗрдЧрд╛ред "рд░рд╛рд╣рдЧреАрд░реЛрдВ" рдХреЗ рд▓рд┐рдП рдпрд╣ "0" рд▓реМрдЯрд╛рдПрдЧрд╛ред рд╣рдо рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдкрддреЗрджрд╛рд░ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд░реЗрдВрдЧреЗ (рдпрджрд┐ рд╡рд░реНрддрдорд╛рди рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рд╕реА рднреА рд╡реНрдпрдХреНрддрд┐ рдХреЛ рдЕрдзрд┐рдХ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рддрд░реАрдХреЗ рд╕реЗ рдкрддрд╛ рд╣реИ, рддреЛ рдореИрдВ рдЦрд╝реБрд╢реА рд╕реЗ рдЙрд╕рдХрд╛ рдЕрдиреБрднрд╡ рд▓реЗрдЧрд╛)ред
рдЗрд╕рд▓рд┐рдП, рд╣рдорд╛рд░реЗ рдирдП рд╕рдВрд╕рд╛рдзрди рдореЗрдВ рд╣рдо рд╕реНрдирд┐рдкреЗрдЯ рдХреЙрд▓ рд░рдЦреЗрдВрдЧреЗ, рдЬрд┐рд╕реЗ рдЕрдм рд╣рдо рд▓рд┐рдЦреЗрдВрдЧреЗ:
[[!msg-inbox? &userId=`[[+modx.user.id]]`]]
рдХреГрдкрдпрд╛ рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рд╣рдо рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЖрдИрдбреА рдХреЗ рд░реВрдк рдореЗрдВ рд╡рд░реНрддрдорд╛рди рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЖрдИрдбреА рдкреИрд░рд╛рдореАрдЯрд░ рдкрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВред рдЕрдм msg-inbox рдирд╛рдордХ рд╕реНрдирд┐рдкреЗрдЯ рдмрдирд╛рдПрдВ рдФрд░ рдЙрд╕рдореЗрдВ рдирд┐рдореНрди рдХреЛрдб рдЬреЛрдбрд╝реЗрдВ:
<?php $output = ''; $outputSeparator = isset($outputSeparator) ? $outputSeparator : "\n"; $userId = isset($userId) ? $userId : 0; $limit = isset($limit) ? (integer) $limit : 10; $offset = isset($offset) ? (integer) $offset : 0; $tpl = isset($tpl) ? $tpl : 'inbox_tpl'; if ($userId == 0) { return; } $c = $modx->newQuery('modUserMessage'); $c->where(array( 'recipient' => $userId )); $c->sortby('date_sent','DESC'); $c->limit($offset,$limit); $messages = $modx->getCollection('modUserMessage',$c); foreach ($messages as $msg){ $msgarray = $msg->toArray(); $output .= $modx->getChunk($tpl, $msgarray) . $outputSeparator; $msg->set('read',1); $msg->save(); } return $output;
рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдХреБрдЫ рднреА рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдЙрддреНрдХреГрд╖реНрдЯ рдирд╣реАрдВ рд╣реИред рдпрд╣рд╛рдВ рд╣рдо рдкрд╣рд▓реЗ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддреЗ рд╣реИрдВ, рдпрджрд┐ рдХреЛрдИ рд╣реЛ, рдпрд╛ рдЙрдирдХреЗ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рдиреЛрдВ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рддреЗ рд╣реИрдВред рдлрд┐рд░, рдмрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╣рдо рдПрдХ рдмрд╛рд░ рдлрд┐рд░ рдпреВрдЬрд░ рдЖрдИрдбреА (рдЕрдЪрд╛рдирдХ рдЪрдВрдЪрд▓ рд╣рд╛рдереЛрдВ рд╡рд╛рд▓рд╛ рд╡реНрдпрдХреНрддрд┐ рдПрд╕реАрдПрд▓ рдореЗрдВ рдорд┐рд▓рд╛) рдХреА рдЬрд╛рдВрдЪ рдХрд░рддреЗ рд╣реИрдВ, рдЕрдЧрд░ 0, рд╣рдо рд╕реНрдирд┐рдкреЗрдЯ рдХреЛ рд░реЛрдХрддреЗ рд╣реИрдВред рд╡реИрд╕реЗ, рд╕реНрдирд┐рдкреЗрдЯ рдХреЛ рдХреЙрд▓ рдХрд░рддреЗ рд╕рдордп, рдЖрдкрдХреЛ рд╣рдореЗрд╢рд╛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЖрдИрдбреА рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдЕрдиреНрдпрдерд╛ рдпрд╣ 0 рдкрд░ рдЪреВрдХ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рд╕реНрдирд┐рдкреЗрдЯ рдЗрд╕ рдЪрд░рдг рдкрд░ рдХрд╛рдо рдХрд░рдирд╛ рдмрдВрдж рдХрд░ рджреЗрддрд╛ рд╣реИред
рдЕрдЧрд▓рд╛, рд╣рдо рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдХреНрд╡реЗрд░реА рдХреЗ рд▓рд┐рдП xPDO рддреИрдпрд╛рд░ рдХрд░рддреЗ рд╣реИрдВред рд╣рдореЗрдВ рдЙрди рд╕рдВрджреЗрд╢реЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдЬрд┐рдирдХреЗ рд▓рд┐рдП рдкрддрд╛ рдпреВрдЬрд░рдЖрдИрдб рдХреЗ рдмрд░рд╛рдмрд░ рдЖрдИрдбреА рд╣реИред рд╣рдо рдЕрдиреНрдп рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рднреА рдкрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВ рдЬрд┐рдирдХреА рд╣рдореЗрдВ рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рдкреЗрдЬрд┐рдВрдЧ рдХрд░рддреЗ рд╕рдордп рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА - $ рд╕реАрдорд╛ рдФрд░ $ рдСрдлрд╕реЗрдЯред рдЦреИрд░, рд╣рдо рддрд╛рд░реАрдЦ рдХреЗ рдХреНрд░рдо рдореЗрдВ рдХреНрд░рдордмрджреНрдз рд╣реИрдВред рд▓рд╛рдЗрди "$ рд╕рдВрджреЗрд╢ = $ modx-> getCollection ('modUserMessage', $ c);" рдорд╛рдкрджрдВрдб $ c рджреНрд╡рд╛рд░рд╛ modUserMessage рд╕реЗ рд╕реАрдзрд╛ рдЪрдпрди рдХрд░рддрд╛ рд╣реИред рдлрд┐рд░ рд╣рдо рдкрд░рд┐рдгрд╛рдореА рд╕рд░рдгреА рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЬрд╛рддреЗ рд╣реИрдВ рдФрд░ рдЯреЗрдореНрдкрд▓реЗрдЯ рдХреЗ рдмрдЬрд╛рдп рдЪрдВрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рд╕реЗ, рд╣рдо рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рдкрдврд╝рддреЗ рд╣реИрдВ, рдЙрдиреНрд╣реЗрдВ "1" рдХреЗ рдмрд░рд╛рдмрд░ рд╕реНрдерд┐рддрд┐ рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реЗрдЯ рдХрд░рддреЗ рд╣реИрдВ, рдЕрд░реНрдерд╛рдд "рдкрдврд╝реЗрдВред"
рдЕрдм рдЖрдкрдХреЛ рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЯреЗрдореНрдкрд▓реЗрдЯ рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, "inbox_tpl" рдирд╛рдо рдХрд╛ рдПрдХ рдирдпрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдмрдирд╛рдПрдВ рдФрд░ рдЙрд╕рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЬреЛрдбрд╝реЗрдВ:
<div class=тАЭinbox-message [[+read:isequalto=`0`:then=`unread`]]тАЭ> <p><b>:</b> [[+sender:userinfo=`username`]] </p> <p><b>:</b> [[+date_sent]] </p> <p><b>:</b> [[+subject]] </p> <p><b>:</b> [[+message]]</p> </div>
рдЕрд╕рд▓ рдореЗрдВ, HTML рдорд╛рд░реНрдХрдЕрдк рдЖрдкрдХреЗ рд╕реНрд╡рд╛рдж рдХреЗ рд▓рд┐рдП рдмрд┐рд▓реНрдХреБрд▓ рднреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдореИрдВ рдпрд╣рд╛рдВ рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рдЗрдВрдЧрд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реВрдВред рдХреЗрд╡рд▓ рдПрдХ рдЪреАрдЬ рдЬрд┐рд╕ рдкрд░ рдореИрдВ рдзреНрдпрд╛рди рдЖрдХрд░реНрд╖рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ рд╡рд╣ рд╣реИ рдмрд┐рдирд╛ рдкрдврд╝реЗ рд╕рдВрджреЗрд╢реЛрдВ рдХрд╛ рд╕рдВрдХреЗрддред рдЗрд╕рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ рдПрдХ рд╡рд░реНрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬреЛ рд╕рдВрджреЗрд╢ рдХрдВрдЯреЗрдирд░ рдХреЛ рд╕реМрдВрдкрд╛ рдЧрдпрд╛ рд╣реИ рдпрджрд┐ рдЗрд╕рдХрд╛ рдкрдврд╝рд╛ рд╣реБрдЖ рдорд╛рди 0: рд╡рд░реНрдЧ = "рдЗрдирдмреЙрдХреНрд╕-рд╕рдВрджреЗрд╢ [[+ рдкрдврд╝рд╛: isequalto =` 0`: рддреЛ = `рдЕрдкрдард┐рдд`]] рд╣реИред рдЕрдиреНрдпрдерд╛, рдЕрдкрдард┐рдд рд╡рд░реНрдЧ рдмрд╕ рдирд╣реАрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛рдПрдЧрд╛ред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдмрд┐рдирд╛ рдкрдврд╝реЗ рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рд╕реАрдПрд╕рдПрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ "рд╣рд╛рдЗрд▓рд╛рдЗрдЯ" рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдпрджрд┐ рдЖрдк рдЪрд╛рд╣реЗрдВ, рддреЛ рдЖрдк рдкрд╛рда рдХреЛ "рдирд╣реАрдВ рдкрдврд╝рд╛" рдпрд╛ рд╕рдВрдмрдВрдзрд┐рдд рдЖрдЗрдХрди рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдЕрдм рд╣рдо рдкрд░реАрдХреНрд╖рдг рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдПрдХ рдирдпрд╛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкрдВрдЬреАрдХреГрдд рдХрд░реЗрдВ рдФрд░ рджреГрд╢реНрдпрдкрдЯрд▓ рдкрд░ рд▓реЙрдЧ рдЗрди рдХрд░реЗрдВред рд╣рдо рдЗрдирдмреЙрдХреНрд╕ рдкреГрд╖реНрда рдкрд░ рдЬрд╛рддреЗ рд╣реИрдВ, рдФрд░ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рд╣рдо рдХреБрдЫ рднреА рдирд╣реАрдВ рджреЗрдЦрддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рдХрд┐рд╕реА рдиреЗ рдЕрднреА рддрдХ рд╣рдореЗрдВ рдирд╣реАрдВ рд▓рд┐рдЦрд╛ рд╣реИред рдареАрдХ рд╣реИ, рдЪрд▓реЛ рдПрдХ рдкрд░реАрдХреНрд╖рдг рд╕рдВрджреЗрд╢ рднреЗрдЬреЗрдВред рд╣рдо рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдкреИрдирд▓ рдкрд░ рдЬрд╛рддреЗ рд╣реИрдВ, рдореЗрдиреВ "рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛" -> "рд╕рдВрджреЗрд╢"ред рд╣рдо рдмрдЯрди "рдирдпрд╛ рд╕рдВрджреЗрд╢" рджрдмрд╛рддреЗ рд╣реИрдВ, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХрд╛ рдЪрдпрди рдХрд░рддреЗ рд╣реИрдВ, "рд╡рд┐рд╖рдп" рдФрд░ "рд╕рдВрджреЗрд╢" рднрд░реЗрдВ рдФрд░ рднреЗрдЬреЗрдВред рдЕрдм рдЗрдирдмреЙрдХреНрд╕ рдкреГрд╖реНрда рдкрд░ рд╡рд╛рдкрд╕ рдЬрд╛рдПрдВ, рдФрд░ рд╡реЙрдЗрд▓рд╛ - рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рд╕реЗ рдПрдХ рдирдпрд╛ рдЕрдкрдард┐рдд рд╕рдВрджреЗрд╢ рд╣реИ!
3. рд╕рдВрджреЗрд╢ рднреЗрдЬреЗрдВ
рдкреВрд░реНрдг рд╕рдВрдЪрд╛рд░ рдХреЗ рд▓рд┐рдП, рд╕рдВрджреЗрд╢ рдкрдврд╝рдирд╛ рдкрд░реНрдпрд╛рдкреНрдд рдирд╣реАрдВ рд╣реИ, рдЙрдиреНрд╣реЗрдВ рдХрд┐рд╕реА рддрд░рд╣ рднреЗрдЬрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЦреИрд░, рд╣рдорд╛рд░реЗ рдкреЗрдЬ рдкрд░ рдПрдХ рд╕рдВрджреЗрд╢ рднреЗрдЬрдиреЗ рдХрд╛ рдлреЙрд░реНрдо рдЬреЛрдбрд╝реЗрдВред рд╣рдорд╛рд░реЗ рдЗрдирдмреЙрдХреНрд╕ рд╕рдВрд╕рд╛рдзрди рдЦреЛрд▓реЗрдВ рдФрд░ рдлрд╝реЙрд░реНрдо рдЬреЛрдбрд╝реЗрдВ:
<form action="[[*id]]" method="post"> <label> </label><input type="text" name="to" value=""/> <label> </label><input type="text" name="subj" value=""/> <label> </label><textarea name="msg"></textarea> <input type="submit" name="send" value=""/> </form>
рдлрд┐рд░, рд╕рдм рдХреБрдЫ рдПрдХ рдЖрджрд┐рдо рд╕реНрддрд░ рдкрд░ рд╣реИред рд╣рдо
FormIt рд╕реНрдирд┐рдкреЗрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдлреЙрд░реНрдо рдХреЛ рдкреНрд░реЛрд╕реЗрд╕ рдХрд░реЗрдВрдЧреЗред рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рд╕рдмрд╕реЗ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд░реВрдк рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдЙрдкрдХрд░рдг рд╣реИред рдбреЗрдЯрд╛ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, FormIt рд╕реНрдирд┐рдкреЗрдЯ рдХреА рдПрдХ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХрд╣ рд╕рдХрддреЗ рд╣реИрдВ - "рд╣реБрдХ" (рд╣реБрдХ)ред рд╣реБрдХ рд╡рд┐рднрд┐рдиреНрди рдкреНрд░рдХрд╛рд░ рдХреЗ рдХрд╛рд░реНрдп рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ - рд╕реНрдкреИрдо рдХреЗ рд╡рд┐рд░реБрджреНрдз рд╕реБрд░рдХреНрд╖рд╛, рдлрд╝реЙрд░реНрдо рд╕рддреНрдпрд╛рдкрди рдФрд░ рдЕрдиреНрдпред рдпрджрд┐ рдХреЛрдИ рд╣реБрдХ рдлреЙрд░реНрдо рдХреЛ рдЕрд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддрд╛ рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╕рддреНрдпрд╛рдкрди рдХреЗ рджреМрд░рд╛рди), рддреЛ рд╡рд╣ рдЧрд▓рдд рд╡рд╛рдкрд╕ рдЖ рдЬрд╛рдПрдЧрд╛ рдФрд░ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдореЗрдВ рдЕрдЧрд▓рд╛ рд╣реБрдХ рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рдПрдЧрд╛ред рд╕рд╛рде рд╣реА, рдЖрдк рдПрдХ рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢ рднреЗрдЬ рд╕рдХрддреЗ рд╣реИрдВред
рдПрдХ рд╕рдВрджреЗрд╢ рднреЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рдЕрдкрдирд╛ рд╣реБрдХ рд▓рд┐рдЦреЗрдВрдЧреЗ рдФрд░ рдЗрд╕реЗ рдлреЙрд░реНрдо рдлрд╝реАрдб рдХрд░реЗрдВрдЧреЗред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдЗрдирдмреЙрдХреНрд╕ рд╕рдВрд╕рд╛рдзрди рдореЗрдВ рдПрдХ FormIt рдХреЙрд▓ рдЬреЛрдбрд╝реЗрдВред рдЗрд╕реЗ рдкреГрд╖реНрда рдкрд░ рдЬрд┐рддрдирд╛ рд╕рдВрднрд╡ рд╣реЛ рд╕рдХреЗ рд╕реНрдерд╛рди рдкрд░ рд░рдЦрдиреЗ рдХреА рдЕрдиреБрд╢рдВрд╕рд╛ рдХреА рдЬрд╛рддреА рд╣реИ, рдЕрд░реНрдерд╛рдд рд╣рдо рдЗрд╕реЗ рдлрд╝реЙрд░реНрдо рд╕реЗ рдкрд╣рд▓реЗ рдбрд╛рд▓реЗрдВрдЧреЗ рдФрд░ рд╕рдВрджреЗрд╢-рдЗрдирдмреЙрдХреНрд╕ рд╕реНрдирд┐рдкреЗрдЯ рдХреЛ рдХреЙрд▓ рдХрд░реЗрдВрдЧреЗ:
[[!FormIt? &hooks=`msg-send` &submitVar=`send`]]
рджреВрд╕рд░реЗ рдкреИрд░рд╛рдореАрдЯрд░ submitVar рдкрд░ рдзреНрдпрд╛рди рджреЗрдВред рдЗрд╕рдореЗрдВ рд╣рдо "рд╕рдмрдорд┐рдЯ рдХрд░реЗрдВ" рдмрдЯрди рдХрд╛ рдирд╛рдо рджрд░реНрд╢рд╛рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдлрд╝реЙрд░реНрдо рдХреЛ рдкрддрд╛ рдЪрд▓ рдЬрд╛рдПрдЧрд╛ рдХрд┐ рдкреЗрдЬ рдкрд░ рдХреМрди рд╕рд╛ рдлреЙрд░реНрдо рд╣реИ рдФрд░ рдЗрд╕реЗ рдХреИрд╕реЗ рдкреНрд░реЛрд╕реЗрд╕ рдХрд░рдирд╛ рд╣реИред рдХрд╣рдиреЗ рдХреА рдЬрд░реВрд░рдд рдирд╣реАрдВ рд╣реИ, рдкреЗрдЬ рдкрд░ рдХрдИ рд░реВрдк рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред
рдЕрдм msg-send рдирд╛рдо рд╕реЗ рдПрдХ рдирдпрд╛ рд╕реНрдирд┐рдкреЗрдЯ рдмрдирд╛рдПрдВ рдФрд░ рдЙрд╕рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЬреЛрдбрд╝реЗрдВ:
<?php $userid = isset($userId) ? $userId: 0; if ($userid == 0) { return false;
рдпрд╣рд╛рдВ рд╣рдо рдкрд╣рд▓реЗ рдЧреБрдордирд╛рдореА рдХреЗ рд▓рд┐рдП рдлрд┐рд░ рд╕реЗ рдЬрд╛рдВрдЪ рдХрд░рддреЗ рд╣реИрдВ, рдлрд┐рд░ рд╣рдо рдлреЙрд░реНрдо рд╕реЗ рдбреЗрдЯрд╛ рд▓реЗрддреЗ рд╣реИрдВред FormIt рдЙрдиреНрд╣реЗрдВ $ рд╣реБрдХ рдСрдмреНрдЬреЗрдХреНрдЯ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддрд╛ рд╣реИред рдЖрдк рдЙрдиреНрд╣реЗрдВ $ рд╣реБрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ -> getValue () рд╡рд┐рдзрд┐, рдФрд░ $ рд╣реБрдХ -> getValues тАЛтАЛ() рд╡рд┐рдзрд┐ рд╕рднреА рдкреНрд░рдкрддреНрд░ рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдПрдХ рд╕рд░рдгреА рд╡рд╛рдкрд╕ рдЖ рдЬрд╛рдПрдЧреАред рдЕрдЧрд▓рд╛, рд╣рдо рдПрдХ рдирдпрд╛ modUserMessage рдСрдмреНрдЬреЗрдХреНрдЯ рдмрдирд╛рддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕рдХреЗ рдЧреБрдгреЛрдВ рдХреЛ рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдкреЙрдкреНрдпреБрд▓реЗрдЯ рдХрд░рддреЗ рд╣реИрдВред рд╣рдо рд╕рдВрджреЗрд╢ рднреЗрдЬрдиреЗ рдХреА рддрд╛рд░реАрдЦ рднреА рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ рдФрд░ рдкреНрд░рдХрд╛рд░ рдирд┐рдЬреА = 1 рд╣реИред
рдмрдЪрд╛рдУ, рдЪреЗрдХ рдХрд░реЛред рдЗрд╕ рд╕реНрддрд░ рдкрд░, "рдЯреВ" рдлрд╝реАрд▓реНрдб рдореЗрдВ, рдЖрдкрдХреЛ рдкреНрд░рд╛рдкреНрддрдХрд░реНрддрд╛ рдЖрдИрдбреА рд▓рд┐рдЦрдирд╛ рд╣реЛрдЧрд╛ред рдЖрдЗрдП рдЕрдкрдиреЗ рдЖрдк рдХреЛ рдПрдХ рд╕рдВрджреЗрд╢ рднреЗрдЬрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВред рдпрджрд┐ рдЖрдк рдлреНрд░рдВрдЯрдПрдВрдб рдореЗрдВ рдПрдХ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдХреЗ рд░реВрдк рдореЗрдВ рд▓реЙрдЧ рдЗрди рд╣реИрдВ, рддреЛ рдкреНрд░рд╛рдкреНрддрдХрд░реНрддрд╛ рдХреА рдЖрдИрдбреА рд╣реЛрдЧреАред рд╣рдо рд╢реЗрд╖ рдлрд╝реАрд▓реНрдб рднрд░рддреЗ рд╣реИрдВ рдФрд░ "рднреЗрдЬреЗрдВ" рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рддреЗ рд╣реИрдВред рдпрджрд┐ рд╕рдм рдХреБрдЫ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рддреЛ рд╣рдорд╛рд░рд╛ рд╕рдВрджреЗрд╢ рд╣рдорд╛рд░реЗ рдкреЗрдЬ рдкрд░ рджрд┐рдЦрд╛рдИ рджреЗрдЧрд╛ред рдЕрдм рдЖрдк рдХрдИ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдкрдВрдЬреАрдХреГрдд рдХрд░рдиреЗ рдФрд░ рдПрдХ-рджреВрд╕рд░реЗ рдХреЛ рд╕рдВрджреЗрд╢ рдлреЗрдВрдХрдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдирд┐рд╖реНрдХрд░реНрд╖
рдореИрдВрдиреЗ рдЬрд╛рдирдмреВрдЭрдХрд░ рд▓реЗрдЦ рдореЗрдВ рдирд╛рдо рд╕реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреА рдкрд░рд┐рднрд╛рд╖рд╛ рдпрд╛ рд╕реВрдЪреА рд╕реЗ рдПрдХ рдкрддреЗрджрд╛рд░ рдХреА рдкрд╕рдВрдж рдХреЛ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рдХрд┐рдпрд╛ - рдпрд╣ рд╕рдм рд╕реАрдзреЗ рдЖрдкрдХреЗ рдХрд╛рд░реНрдпреЛрдВ рдФрд░ рдЗрдЪреНрдЫрд╛рдУрдВ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдореИрдВ рдЖрдкрдХреЛ рд░рдЪрдирд╛рддреНрдордХрддрд╛ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЬрдЧрд╣ рдЫреЛрдбрд╝рддрд╛ рд╣реВрдВ, рдФрд░ рдЗрд╕рд▓рд┐рдП рд╡рд┐рдЪрд╛рд░рд╣реАрди рдХреЙрдкреА-рдкреЗрд╕реНрдЯ рдХрдо рдерд╛ред рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо рдХреЗ рд▓рд┐рдП, рдореИрдВ рдПрдХ рд╕рдВрдХреЗрдд рджреЗрддрд╛ рд╣реВрдВ - MODx рдореЗрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ рдПрдХ рд╣реА рд╡рд╕реНрддреБ рд╣реИрдВ, рдХреЗрд╡рд▓ рдЙрдирдХреЗ рд╡рд░реНрдЧ рдХреЛ modUser рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред
рдпрд╣ рд▓реЗрдЦ рдПрдХ рд╕рдВрдкреВрд░реНрдг рд╕рдорд╛рдзрд╛рди рд╣реЛрдиреЗ рдХрд╛ рджрд╛рд╡рд╛ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдХреЛрдИ рд╕рдВрджреЗрд╢ рдкреНрд░рдмрдВрдзрди рдирд╣реАрдВ рд╣реИ, рдХреЛрдИ рдЫрдВрдЯрдиреА рдирд╣реАрдВ рд╣реИ, рдФрд░ рдЗрд╕реА рддрд░рд╣ред рдореИрдВрдиреЗ рдЕрднреА рджрд┐рдЦрд╛рдпрд╛ рдХрд┐ рдХрд╕реНрдЯрдо рд╕реНрдирд┐рдкреЗрдЯреНрд╕ рдХреЗ рд╕рд╛рде MODx рдХреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдЗрддрдирд╛ рдореБрд╢реНрдХрд┐рд▓ рдирд╣реАрдВ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдкрд╣рд▓реА рдирдЬрд╝рд░ рдореЗрдВ рд▓рдЧрддрд╛ рд╣реИред
рд╕реМрднрд╛рдЧреНрдп рд╣реИ
рдкреБрдирд╢реНрдЪ рдзрдиреНрдпрд╡рд╛рдж рдХреНрдпрд╛ рдЖрдк рдХреЗ рд▓рд┐рдП рдкрддрд╛ рд╣реИ!