Skip to content
Snippets Groups Projects
Commit f5545155 authored by Rick Pasetto's avatar Rick Pasetto
Browse files

EXT-5272: move prefs out of nearby media

Review #114
This (mostly XUI) change moves the prefs checkboxes out of the nearby media panel and into the prefs floater. The "Sound" tab is now the "Sound & Media" tab, and its layout has been modified drastically to match https://docs.google.com:443/a/lindenlab.​com/Doc?id=ddznhrqn_34kcxdz8f3#​Preferences
parent c5736795
No related branches found
No related tags found
No related merge requests found
...@@ -4598,7 +4598,7 @@ ...@@ -4598,7 +4598,7 @@
<key>Type</key> <key>Type</key>
<string>Boolean</string> <string>Boolean</string>
<key>Value</key> <key>Value</key>
<integer>0</integer> <integer>1</integer>
</map> </map>
<key>MediaShowWithinParcel</key> <key>MediaShowWithinParcel</key>
<map> <map>
......
...@@ -321,9 +321,6 @@ LLFloaterPreference::LLFloaterPreference(const LLSD& key) ...@@ -321,9 +321,6 @@ LLFloaterPreference::LLFloaterPreference(const LLSD& key)
mCommitCallbackRegistrar.add("Pref.VertexShaderEnable", boost::bind(&LLFloaterPreference::onVertexShaderEnable, this)); mCommitCallbackRegistrar.add("Pref.VertexShaderEnable", boost::bind(&LLFloaterPreference::onVertexShaderEnable, this));
mCommitCallbackRegistrar.add("Pref.WindowedMod", boost::bind(&LLFloaterPreference::onCommitWindowedMode, this)); mCommitCallbackRegistrar.add("Pref.WindowedMod", boost::bind(&LLFloaterPreference::onCommitWindowedMode, this));
mCommitCallbackRegistrar.add("Pref.UpdateSliderText", boost::bind(&LLFloaterPreference::onUpdateSliderText,this, _1,_2)); mCommitCallbackRegistrar.add("Pref.UpdateSliderText", boost::bind(&LLFloaterPreference::onUpdateSliderText,this, _1,_2));
mCommitCallbackRegistrar.add("Pref.ParcelMediaAutoPlayEnable", boost::bind(&LLFloaterPreference::onCommitParcelMediaAutoPlayEnable, this));
mCommitCallbackRegistrar.add("Pref.MediaEnabled", boost::bind(&LLFloaterPreference::onCommitMediaEnabled, this));
mCommitCallbackRegistrar.add("Pref.MusicEnabled", boost::bind(&LLFloaterPreference::onCommitMusicEnabled, this));
mCommitCallbackRegistrar.add("Pref.QualityPerformance", boost::bind(&LLFloaterPreference::onChangeQuality, this, _2)); mCommitCallbackRegistrar.add("Pref.QualityPerformance", boost::bind(&LLFloaterPreference::onChangeQuality, this, _2));
mCommitCallbackRegistrar.add("Pref.applyUIColor", boost::bind(&LLFloaterPreference::applyUIColor, this ,_1, _2)); mCommitCallbackRegistrar.add("Pref.applyUIColor", boost::bind(&LLFloaterPreference::applyUIColor, this ,_1, _2));
mCommitCallbackRegistrar.add("Pref.getUIColor", boost::bind(&LLFloaterPreference::getUIColor, this ,_1, _2)); mCommitCallbackRegistrar.add("Pref.getUIColor", boost::bind(&LLFloaterPreference::getUIColor, this ,_1, _2));
...@@ -957,29 +954,6 @@ void LLFloaterPreference::disableUnavailableSettings() ...@@ -957,29 +954,6 @@ void LLFloaterPreference::disableUnavailableSettings()
} }
} }
void LLFloaterPreference::onCommitParcelMediaAutoPlayEnable()
{
BOOL autoplay = getChild<LLCheckBoxCtrl>("autoplay_enabled")->get();
gSavedSettings.setBOOL(LLViewerMedia::AUTO_PLAY_MEDIA_SETTING, autoplay);
lldebugs << "autoplay now = " << int(autoplay) << llendl;
}
void LLFloaterPreference::onCommitMediaEnabled()
{
LLCheckBoxCtrl *media_enabled_ctrl = getChild<LLCheckBoxCtrl>("media_enabled");
bool enabled = media_enabled_ctrl->get();
gSavedSettings.setBOOL("AudioStreamingMedia", enabled);
}
void LLFloaterPreference::onCommitMusicEnabled()
{
LLCheckBoxCtrl *music_enabled_ctrl = getChild<LLCheckBoxCtrl>("music_enabled");
bool enabled = music_enabled_ctrl->get();
gSavedSettings.setBOOL("AudioStreamingMusic", enabled);
}
void LLFloaterPreference::refresh() void LLFloaterPreference::refresh()
{ {
LLPanel::refresh(); LLPanel::refresh();
......
...@@ -72,7 +72,7 @@ ...@@ -72,7 +72,7 @@
<panel <panel
class="panel_preference" class="panel_preference"
filename="panel_preferences_sound.xml" filename="panel_preferences_sound.xml"
label="Sound" label="Sound &amp; Media"
layout="topleft" layout="topleft"
help_topic="preferences_audio_tab" help_topic="preferences_audio_tab"
name="audio" /> name="audio" />
......
...@@ -194,18 +194,6 @@ ...@@ -194,18 +194,6 @@
function="SideTray.PanelPeopleTab" function="SideTray.PanelPeopleTab"
parameter="nearby_panel" /> parameter="nearby_panel" />
</menu_item_call> </menu_item_call>
<menu_item_check
label="Nearby Media"
layout="topleft"
name="Nearby Media"
shortcut="control|alt|N">
<menu_item_check.on_check
function="Floater.Visible"
parameter="nearby_media" />
<menu_item_check.on_click
function="Floater.Toggle"
parameter="nearby_media" />
</menu_item_check>
</menu> </menu>
<menu <menu
label="World" label="World"
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
background_visible="true" background_visible="true"
layout="topleft" layout="topleft"
width="270" width="270"
height="325" height="235"
name="nearby_media" name="nearby_media"
help_topic="nearby_media"> help_topic="nearby_media">
<string name="media_item_count_format">(%ld media items)</string> <string name="media_item_count_format">(%ld media items)</string>
...@@ -88,7 +88,7 @@ ...@@ -88,7 +88,7 @@
top_delta="30" top_delta="30"
right="-1" right="-1"
left="0" left="0"
height="295"> height="200">
<text <text
type="string" type="string"
length="1" length="1"
...@@ -149,7 +149,7 @@ ...@@ -149,7 +149,7 @@
<scroll_list <scroll_list
follows="left|top|bottom|right" follows="left|top|bottom|right"
column_padding="0" column_padding="0"
height="100" height="105"
draw_heading="false" draw_heading="false"
draw_stripes="true" draw_stripes="true"
bg_stripe_color="0.25 0.25 0.25 0.25" bg_stripe_color="0.25 0.25 0.25 0.25"
...@@ -200,7 +200,7 @@ ...@@ -200,7 +200,7 @@
name="media_controls" name="media_controls"
follows="left|right|top" follows="left|right|top"
animate="false" animate="false"
height="75" height="26"
layout="topleft" layout="topleft"
top="4" top="4"
left="10" left="10"
...@@ -408,69 +408,5 @@ ...@@ -408,69 +408,5 @@
user_resize="false" /> user_resize="false" />
</layout_stack> </layout_stack>
</panel> </panel>
<panel
bevel_style="in"
background_visible="true"
bg_alpha_color="0.0 0.0 0.0 1.0"
bg_opaque_color="0 0 0 0.3"
follows="left|right|bottom"
top_pad="5"
height="90"
left="10"
right="-10">
<check_box
name="media_enabled_btn"
control_name="AudioStreamingMedia"
value="true"
follows="left|bottom|right"
height="15"
tool_tip="Check this to enable all media"
label="All Media Enabled"
top="10"
left="10"/>
<check_box
name="media_auto_play_btn"
control_name="ParcelMediaAutoPlayEnable"
enabled_control="AudioStreamingMedia"
value="true"
follows="left|bottom|right"
height="15"
tool_tip="Check this to let media auto-play if it wants"
label="Allow Media to auto-play"
top_pad="5"
left="10"/>
<!--
<check_box
name="media_show_within_parcel_btn"
control_name="MediaShowWithinParcel"
enabled_control="AudioStreamingMedia"
value="true"
follows="left|bottom|right"
height="15"
tool_tip="Uncheck this to hide media within the parcel you are standing in"
label="Show media within current parcel"
left="10"/>
-->
<check_box
name="media_show_outside_parcel_btn"
control_name="MediaShowOutsideParcel"
enabled_control="AudioStreamingMedia"
value="true"
follows="left|bottom|right"
height="15"
tool_tip="Uncheck this to hide media outside the parcel you are standing in"
label="Show media outside current parcel"
left="10"/>
<check_box
name="media_show_on_others_btn"
control_name="MediaShowOnOthers"
enabled_control="AudioStreamingMedia"
value="true"
follows="left|bottom|right"
height="15"
tool_tip="Uncheck this to hide media attached to other avatars nearby"
label="Show media attached to other avatars"
left="10"/>
</panel>
</panel> </panel>
</panel> </panel>
...@@ -78,43 +78,6 @@ ...@@ -78,43 +78,6 @@
name="cookies_enabled" name="cookies_enabled"
top_pad="10" top_pad="10"
width="350" /> width="350" />
<check_box
name="media_enabled"
control_name="AudioStreamingMedia"
height="16"
label="Media Enabled"
layout="topleft"
left="30"
top_pad="10"
width="350">
<check_box.commit_callback
function="Pref.MediaEnabled" />
</check_box>
<check_box
enabled_control="AudioStreamingMedia"
control_name="ParcelMediaAutoPlayEnable"
height="16"
label="Allow Media to auto-play"
layout="topleft"
left="30"
name="autoplay_enabled"
top_pad="10"
width="350">
<check_box.commit_callback
function="Pref.ParcelMediaAutoPlayEnable" />
</check_box>
<check_box
control_name="AudioStreamingMusic"
height="16"
label="Music Enabled"
layout="topleft"
left="30"
name="music_enabled"
top_pad="10"
width="350">
<check_box.commit_callback
function="Pref.MusicEnabled" />
</check_box>
<text <text
type="string" type="string"
length="1" length="1"
......
...@@ -17,7 +17,7 @@ ...@@ -17,7 +17,7 @@
increment="0.05" increment="0.05"
initial_value="0.5" initial_value="0.5"
label="Master volume" label="Master volume"
label_width="160" label_width="120"
layout="topleft" layout="topleft"
left="0" left="0"
name="System Volume" name="System Volume"
...@@ -25,20 +25,20 @@ ...@@ -25,20 +25,20 @@
slider_label.halign="right" slider_label.halign="right"
top="10" top="10"
volume="true" volume="true"
width="350"> width="300">
<slider.commit_callback <slider.commit_callback
function="Pref.setControlFalse" function="Pref.setControlFalse"
parameter="MuteAudio" /> parameter="MuteAudio" />
</slider> </slider>
<button <button
control_name="MuteAudio" control_name="MuteAudio"
follows="top|right" follows="top|left"
height="16" height="16"
image_selected="AudioMute_Off" image_selected="AudioMute_Off"
image_unselected="Audio_Off" image_unselected="Audio_Off"
is_toggle="true" is_toggle="true"
layout="topleft" layout="topleft"
left_pad="16" left_pad="5"
name="mute_audio" name="mute_audio"
tab_stop="false" tab_stop="false"
width="16" /> width="16" />
...@@ -46,179 +46,188 @@ ...@@ -46,179 +46,188 @@
control_name="MuteWhenMinimized" control_name="MuteWhenMinimized"
height="15" height="15"
initial_value="true" initial_value="true"
label="Mute if minimized" label="Mute when minimized"
layout="topleft" layout="topleft"
left="167"
name="mute_when_minimized" name="mute_when_minimized"
top_pad="5" top_delta="3"
left_pad="5"
width="215" /> width="215" />
<slider <slider
control_name="AudioLevelAmbient" control_name="AudioLevelUI"
disabled_control="MuteAudio" disabled_control="MuteAudio"
follows="left|top" follows="left|top"
height="15" height="15"
increment="0.05" increment="0.05"
initial_value="0.5" initial_value="0.5"
label="Ambient" label="Buttons"
label_width="160" label_width="120"
layout="topleft" layout="topleft"
left="0" left="0"
name="Wind Volume" name="UI Volume"
show_text="false" show_text="false"
slider_label.halign="right" slider_label.halign="right"
top_pad="7" top_pad="7"
volume="true" volume="true"
width="350"> width="300">
<slider.commit_callback <slider.commit_callback
function="Pref.setControlFalse" function="Pref.setControlFalse"
parameter="MuteAmbient" /> parameter="MuteUI" />
</slider> </slider>
<button <button
control_name="MuteAmbient" control_name="MuteUI"
disabled_control="MuteAudio" disabled_control="MuteAudio"
follows="top|right" follows="top|left"
height="16" height="16"
image_selected="AudioMute_Off" image_selected="AudioMute_Off"
image_unselected="Audio_Off" image_unselected="Audio_Off"
is_toggle="true" is_toggle="true"
layout="topleft" layout="topleft"
left_pad="16" left_pad="5"
name="mute_audio" name="mute_audio"
tab_stop="false" tab_stop="false"
width="16" /> width="16" />
<slider <slider
control_name="AudioLevelUI" control_name="AudioLevelAmbient"
disabled_control="MuteAudio" disabled_control="MuteAudio"
follows="left|top" follows="left|top"
height="15" height="15"
increment="0.05" increment="0.05"
initial_value="0.5" initial_value="0.5"
label="Buttons" label="Ambient"
label_width="160" label_width="120"
layout="topleft" layout="topleft"
left="0" left="0"
name="UI Volume" name="Wind Volume"
show_text="false" show_text="false"
slider_label.halign="right" slider_label.halign="right"
top_pad="7" top_pad="7"
volume="true" volume="true"
width="350"> width="300">
<slider.commit_callback <slider.commit_callback
function="Pref.setControlFalse" function="Pref.setControlFalse"
parameter="MuteUI" /> parameter="MuteAmbient" />
</slider> </slider>
<button <button
control_name="MuteUI" control_name="MuteAmbient"
disabled_control="MuteAudio" disabled_control="MuteAudio"
follows="top|right" follows="top|left"
height="16" height="16"
image_selected="AudioMute_Off" image_selected="AudioMute_Off"
image_unselected="Audio_Off" image_unselected="Audio_Off"
is_toggle="true" is_toggle="true"
layout="topleft" layout="topleft"
left_pad="16" left_pad="5"
name="mute_audio" name="mute_audio"
tab_stop="false" tab_stop="false"
width="16" /> width="16" />
<slider <slider
control_name="AudioLevelMedia" control_name="AudioLevelSFX"
disabled_control="MuteAudio" disabled_control="MuteAudio"
follows="left|top" follows="left|top"
height="15" height="15"
increment="0.05" increment="0.05"
initial_value="0.5" initial_value="0.5"
label="Media" label="Sound Effects"
label_width="160" label_width="120"
slider_label.halign="right"
layout="topleft" layout="topleft"
left="0" left="0"
name="Media Volume" name="SFX Volume"
show_text="false" show_text="false"
slider_label.halign="right"
top_pad="7" top_pad="7"
volume="true" volume="true"
width="350"> width="300">
<slider.commit_callback <slider.commit_callback
function="Pref.setControlFalse" function="Pref.setControlFalse"
parameter="MuteMedia" /> parameter="MuteSounds" />
</slider> </slider>
<button <button
control_name="MuteMedia" control_name="MuteSounds"
disabled_control="MuteAudio" disabled_control="MuteAudio"
follows="top|right" follows="top|left"
height="16" height="16"
image_selected="AudioMute_Off" image_selected="AudioMute_Off"
image_unselected="Audio_Off" image_unselected="Audio_Off"
is_toggle="true" is_toggle="true"
layout="topleft" layout="topleft"
left_pad="16" left_pad="5"
name="mute_audio" name="mute_audio"
tab_stop="false" tab_stop="false"
width="16" /> width="16" />
<slider <slider
control_name="AudioLevelSFX" control_name="AudioLevelMusic"
disabled_control="MuteAudio" disabled_control="MuteAudio"
follows="left|top" follows="left|top"
height="15" height="15"
increment="0.05" increment="0.05"
initial_value="0.5" initial_value="0.5"
label="Sound effects" label="Streaming music"
label_width="160" label_width="120"
slider_label.halign="right"
layout="topleft" layout="topleft"
left="0" left="0"
name="SFX Volume" name="Music Volume"
slider_label.halign="right"
show_text="false" show_text="false"
top_pad="7" top_pad="7"
volume="true" volume="true"
width="350"> width="300">
<slider.commit_callback <slider.commit_callback
function="Pref.setControlFalse" function="Pref.setControlFalse"
parameter="MuteSounds" /> parameter="MuteMusic" />
</slider> </slider>
<button <button
control_name="MuteSounds" control_name="MuteMusic"
disabled_control="MuteAudio" disabled_control="MuteAudio"
follows="top|right" follows="top|left"
height="16" height="16"
image_selected="AudioMute_Off" image_selected="AudioMute_Off"
image_unselected="Audio_Off" image_unselected="Audio_Off"
is_toggle="true" is_toggle="true"
layout="topleft" layout="topleft"
left_pad="16" left_pad="5"
name="mute_audio" name="mute_audio"
tab_stop="false" tab_stop="false"
width="16" /> width="16" />
<check_box
control_name="AudioStreamingMusic"
height="16"
label="Enabled"
layout="topleft"
left_pad="5"
name="music_enabled"
top_delta="2"
width="350"/>
<slider <slider
control_name="AudioLevelMusic" control_name="AudioLevelMedia"
disabled_control="MuteAudio" disabled_control="MuteAudio"
follows="left|top" follows="left|top"
height="15" height="16"
increment="0.05" increment="0.05"
initial_value="0.5" initial_value="0.5"
label="Streaming music" label="Media"
label_width="160" label_width="120"
layout="topleft" layout="topleft"
left="0" left="0"
name="Music Volume" name="Media Volume"
slider_label.halign="right"
show_text="false" show_text="false"
slider_label.halign="right"
top_pad="7" top_pad="7"
volume="true" volume="true"
width="350"> width="300">
<slider.commit_callback <slider.commit_callback
function="Pref.setControlFalse" function="Pref.setControlFalse"
parameter="MuteMusic" /> parameter="MuteMedia" />
</slider> </slider>
<button <button
control_name="MuteMusic" control_name="MuteMedia"
disabled_control="MuteAudio" disabled_control="MuteAudio"
follows="top|right" follows="top|left"
height="16" height="16"
image_selected="AudioMute_Off" image_selected="AudioMute_Off"
image_unselected="Audio_Off" image_unselected="Audio_Off"
is_toggle="true" is_toggle="true"
layout="topleft" layout="topleft"
left_pad="16" left_pad="5"
name="mute_audio" name="mute_audio"
tab_stop="false" tab_stop="false"
width="16" /> width="16" />
...@@ -226,26 +235,22 @@ ...@@ -226,26 +235,22 @@
label_text.halign="left" label_text.halign="left"
follows="left|top" follows="left|top"
height="16" height="16"
control_name ="EnableVoiceChat" control_name ="AudioStreamingMedia"
disabled_control="CmdLineDisableVoice" label="Enabled"
label="Enable voice"
layout="topleft" layout="topleft"
left="28" top_delta="2"
name="enable_voice_check" left_pad="5"
top_pad="5" name="enable_media"
width="110" width="110"/>
>
</check_box>
<slider <slider
control_name="AudioLevelVoice" control_name="AudioLevelVoice"
enabled_control="EnableVoiceChat"
disabled_control="MuteAudio" disabled_control="MuteAudio"
follows="left|top" follows="left|top"
height="15" height="16"
increment="0.05" increment="0.05"
initial_value="0.5" initial_value="0.5"
label="Voice" label="Voice Chat"
label_width="160" label_width="120"
layout="topleft" layout="topleft"
left="0" left="0"
top_delta="20" top_delta="20"
...@@ -253,7 +258,7 @@ ...@@ -253,7 +258,7 @@
show_text="false" show_text="false"
slider_label.halign="right" slider_label.halign="right"
volume="true" volume="true"
width="350"> width="300">
<slider.commit_callback <slider.commit_callback
function="Pref.setControlFalse" function="Pref.setControlFalse"
parameter="MuteVoice" /> parameter="MuteVoice" />
...@@ -261,26 +266,70 @@ ...@@ -261,26 +266,70 @@
<button <button
control_name="MuteVoice" control_name="MuteVoice"
disabled_control="MuteAudio" disabled_control="MuteAudio"
follows="top|right" follows="top|left"
height="16" height="16"
image_selected="AudioMute_Off" image_selected="AudioMute_Off"
image_unselected="Audio_Off" image_unselected="Audio_Off"
is_toggle="true" is_toggle="true"
layout="topleft" layout="topleft"
left_pad="16" left_pad="5"
name="mute_audio" name="mute_audio"
tab_stop="false" tab_stop="false"
width="16" /> width="16" />
<check_box
label_text.halign="left"
follows="left|top"
height="16"
control_name ="EnableVoiceChat"
disabled_control="CmdLineDisableVoice"
label="Enabled"
layout="topleft"
top_delta="2"
left_pad="5"
name="enable_voice_check"
width="110"/>
<!-- -->
<check_box
name="media_auto_play_btn"
control_name="ParcelMediaAutoPlayEnable"
value="true"
follows="left|bottom|right"
height="15"
tool_tip="Check this to let media auto-play if it wants"
label="Allow Media to auto-play"
top_pad="5"
left="25"/>
<check_box
name="media_show_on_others_btn"
control_name="MediaShowOnOthers"
value="true"
follows="left|bottom|right"
height="15"
tool_tip="Uncheck this to hide media attached to other avatars nearby"
label="Play media attached to other avatars"
left="25"/>
<text <text
type="string" type="string"
length="1" length="1"
follows="left|top" follows="left|top"
height="13" height="20"
layout="topleft" layout="topleft"
left="30" left="25"
name="Listen from" name="Listen from"
width="200" width="200"
top="205"> top="210">
Voice Chat Settings
</text>
<text
type="string"
length="1"
follows="left|top"
layout="topleft"
left="80"
top_delta="16"
name="Listen from"
width="80">
Listen from: Listen from:
</text> </text>
<icon <icon
...@@ -292,8 +341,8 @@ ...@@ -292,8 +341,8 @@
mouse_opaque="false" mouse_opaque="false"
visible="true" visible="true"
width="18" width="18"
left="80" left_pad="0"
top="219"/> top_delta="-5"/>
<icon <icon
follows="left|top" follows="left|top"
height="18" height="18"
...@@ -303,20 +352,17 @@ ...@@ -303,20 +352,17 @@
mouse_opaque="false" mouse_opaque="false"
visible="true" visible="true"
width="18" width="18"
top="239" top_delta="20" />
left="80"
/>
<radio_group <radio_group
enabled_control="EnableVoiceChat" enabled_control="EnableVoiceChat"
control_name="VoiceEarLocation" control_name="VoiceEarLocation"
draw_border="false" draw_border="false"
follows="left|top" follows="left|top"
layout="topleft" layout="topleft"
left="100" left_pad="2"
width="221" width="221"
height="38" height="38"
name="ear_location" name="ear_location">
top="218">
<radio_item <radio_item
height="16" height="16"
label="Camera position" label="Camera position"
...@@ -339,8 +385,8 @@ ...@@ -339,8 +385,8 @@
is_toggle="true" is_toggle="true"
label="Input/Output devices" label="Input/Output devices"
layout="topleft" layout="topleft"
left="30" left="80"
top="262" top_pad="5"
name="device_settings_btn" name="device_settings_btn"
width="190"> width="190">
</button> </button>
...@@ -440,28 +486,28 @@ ...@@ -440,28 +486,28 @@
<locate <locate
height="20" height="20"
layout="topleft" layout="topleft"
left_pad="2" left_pad="5"
name="bar1" name="bar1"
top_delta="0" top_delta="0"
width="20" /> width="20" />
<locate <locate
height="20" height="20"
layout="topleft" layout="topleft"
left_pad="2" left_pad="5"
name="bar2" name="bar2"
top_delta="0" top_delta="0"
width="20" /> width="20" />
<locate <locate
height="20" height="20"
layout="topleft" layout="topleft"
left_pad="2" left_pad="5"
name="bar3" name="bar3"
top_delta="0" top_delta="0"
width="20" /> width="20" />
<locate <locate
height="20" height="20"
layout="topleft" layout="topleft"
left_pad="2" left_pad="5"
name="bar4" name="bar4"
top_delta="0" top_delta="0"
width="20" /> width="20" />
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment