Changeset 1160
- Timestamp:
- 02/21/10 01:08:46 (3 years ago)
- Location:
- org.gnex.skypeStatusSidebar
- Files:
-
- 4 modified
-
de-informal.xml (modified) (1 diff)
-
de.xml (modified) (1 diff)
-
files/lib/system/event/listener/MessageSidebarSkypeStatusListener.class.php (modified) (2 diffs)
-
package.xml (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
org.gnex.skypeStatusSidebar/de-informal.xml
r1159 r1160 3 3 <language languagecode="de-informal"> 4 4 <category name="org.gnex.skypeStatusSidebar"> 5 <item name="org.gnex.skypeStatusSidebar.status"><![CDATA[ SkypeStatus von »{$username}« - SkypeName: {$skypeName}]]></item>5 <item name="org.gnex.skypeStatusSidebar.status"><![CDATA[»{$username}« ({$skypeName}) ÃŒber Skype kontaktieren]]></item> 6 6 </category> 7 7 </language> -
org.gnex.skypeStatusSidebar/de.xml
r1159 r1160 3 3 <language languagecode="de"> 4 4 <category name="org.gnex.skypeStatusSidebar"> 5 <item name="org.gnex.skypeStatusSidebar.status"><![CDATA[ SkypeStatus von »{$username}« - SkypeName: {$skypeName}]]></item>5 <item name="org.gnex.skypeStatusSidebar.status"><![CDATA[»{$username}« ({$skypeName}) ÃŒber Skype kontaktieren]]></item> 6 6 </category> 7 7 </language> -
org.gnex.skypeStatusSidebar/files/lib/system/event/listener/MessageSidebarSkypeStatusListener.class.php
r1159 r1160 1 1 <?php 2 2 require_once(WCF_DIR.'lib/system/event/EventListener.class.php'); 3 require_once(WCF_DIR.'lib/data/user/option/UserOptions.class.php'); 3 4 4 5 class MessageSidebarSkypeStatusListener implements EventListener { … … 9 10 public function execute($eventObj, $className, $eventName) { 10 11 foreach ($eventObj->messageSidebars as $id => $sidebar) { 11 $skypeValue = $sidebar->getUser()->getUserOption('Skype'); 12 13 if(isset($skypeValue) && !empty($skypeValue)) { 14 if($skypeStatus) $sidebar->addUserContact($this->getButton($sidebar->getUser()->username, $skypeValue)); 15 } 12 $userOptions = new UserOptions('short', explode(',', MESSAGE_SIDEBAR_SHOW_USER_OPTIONS)); 13 $categories = $userOptions->getOptionTree('profile', $sidebar->getUser()); 14 foreach ($categories as $category) { 15 if($category['categoryName'] == 'profile.messenger') { 16 foreach ($category['options'] as $userOption) { 17 if($userOption['optionName'] == 'skype') { 18 $skypeName = $userOption['outputData']['value']; 19 $optionValue = $userOption['optionValue']; 20 } 21 } 22 } 23 } 24 25 $userContacts = $sidebar->getUserContacts(); 26 foreach ($userContacts as $userContact => $value) { 27 if($value['value'] == $optionValue) { 28 $arrayKey = $userContact; 29 } 30 } 31 32 $userContacts[$arrayKey] = array('value' => $this->getLink($sidebar->getUser()->userID, $this->getImage($sidebar->getUser()->username, $skypeName))); 33 $sidebar->userContacts = $userContacts; 16 34 } 17 35 } 18 36 19 public function getButton($username, $skypeName) { 20 return '<a href="skype:'.$skypeName.'?call"><img src="http://mystatus.skype.com/smallicon/'.$skypeName.'" style="border: none" width="16" height="16" alt="'.WCF::getLanguage()->get('org.gnex.skypeStatusSidebar.status', array('$username' => $username, '$skypeName' => $skypeName)).'" title="'.WCF::getLanguage()->get('org.gnex.skypeStatusSidebar.status', array('$username' => $username, '$skypeName' => $skypeName)).'" /></a>'; 37 public function getImage($username, $skypeName) { 38 $title = WCF::getLanguage()->get('org.gnex.skypeStatusSidebar.status', array('$username' => $username, '$skypeName' => $skypeName)); 39 return '<img src="http://mystatus.skype.com/smallicon/'.$skypeName.'" alt="" title="'.$title.'" />'; 40 } 41 42 public function getLink($userID, $title) { 43 return '<a href="index.php?page=Messenger&userID='.$userID.'&action=skype'.SID_ARG_2ND.'" onclick="return !window.open(this.href, \'skype\', \'width=350,height=400,scrollbars=yes,resizable=yes\')">'.$title.'</a>'; 21 44 } 22 45 } -
org.gnex.skypeStatusSidebar/package.xml
r1159 r1160 6 6 <packagedescription><![CDATA[Zeigt in der MessageSidebar an, welchen Status der Benutzer bei Skype hat.]]></packagedescription> 7 7 <isunique>1</isunique> 8 <version>1. 1.0</version>8 <version>1.2.0</version> 9 9 <date>2010-02-20</date> 10 10 <plugin>com.woltlab.wcf</plugin> … … 39 39 <languages languagecode="de-informal">de-informal.xml</languages> 40 40 </instructions> 41 <instructions type="update" fromversion="1.1.0"> 42 <files>files.tar</files> 43 </instructions> 41 44 </package>
