diff --git a/ChatController/ChatController.csproj b/ChatController/ChatController.csproj
index d253163..ac659be 100644
--- a/ChatController/ChatController.csproj
+++ b/ChatController/ChatController.csproj
@@ -34,6 +34,9 @@
ownchat_favicon.ico
+
+ False
+
..\libs\Newtonsoft.Json.dll
@@ -121,6 +124,9 @@
+
+
+
\ No newline at end of file
diff --git a/ChatController/ChatKlassen/KontaktMessageBuilder.cs b/ChatController/ChatKlassen/KontaktMessageBuilder.cs
index d516ab1..35fc847 100644
--- a/ChatController/ChatKlassen/KontaktMessageBuilder.cs
+++ b/ChatController/ChatKlassen/KontaktMessageBuilder.cs
@@ -21,18 +21,9 @@ namespace ChatController.ChatKlassen
Username = username;
UserMessage = message;
SendTime = sendtime;
- ConvertetSendtimeString = convertedSendTimeString;
+ InternalSendTime = convertedSendTimeString;
- if (isme)
- {
- ChatColor = new BrushConverter().ConvertFromString("#ff5e00") as SolidColorBrush;
- Posi = "Right";
- }
- else
- {
- ChatColor = new BrushConverter().ConvertFromString("#cccccc") as SolidColorBrush;
- Posi = "Left";
- }
+ Farbgebung(isme);
if (IsHyperlink(message))
{
@@ -50,29 +41,25 @@ namespace ChatController.ChatKlassen
DokumentVisibility = Visibility.Collapsed;
_herunterladen = Visibility.Collapsed;
_gifPictureVisibility = Visibility.Collapsed;
+ _picturePlaceHolderVisibility = Visibility.Collapsed;
+
+
+
+
}
// IMage Ansicht
- public KontaktMessageBuilder(string username, string message, string sendtime, bool isme, ImageSource image, DateTime convertedSendTimeString,string originalImage)
+ public KontaktMessageBuilder(string username, string message, string sendtime, bool isme, ImageSource image, DateTime convertedSendTimeString,string originalImage, string imageName)
{
Username = username;
UserMessage = message;
SendTime = sendtime;
ImageSources = image;
- ConvertetSendtimeString = convertedSendTimeString;
+ InternalSendTime = convertedSendTimeString;
OriginalImage = originalImage;
- // Dokpfad =
-
- if (isme)
- {
- ChatColor = new BrushConverter().ConvertFromString("#ff5e00") as SolidColorBrush;
- Posi = "Right";
- }
- else
- {
- ChatColor = new BrushConverter().ConvertFromString("#cccccc") as SolidColorBrush;
- Posi = "Left";
- }
+ OriginalImageName = imageName;
+ // Dokpfad =
+ Farbgebung(isme);
//if (!isGif)
//{
@@ -91,6 +78,33 @@ namespace ChatController.ChatKlassen
HyperlinkVisibility = Visibility.Collapsed;
DokumentVisibility = Visibility.Collapsed;
_herunterladen = Visibility.Collapsed;
+ _picturePlaceHolderVisibility = Visibility.Collapsed;
+
+ }
+
+ //Konstruktor PlaceHolder
+ public KontaktMessageBuilder(string username, string message, string sendtime, bool isme, DateTime convertedSendTimeString, string originalImage, string imageName)
+ {
+
+
+ Username = username;
+ UserMessage = message;
+ SendTime = sendtime;
+ InternalSendTime = convertedSendTimeString;
+ OriginalImage = originalImage;
+ OriginalImageName = imageName;
+
+ Farbgebung(isme);
+
+
+ _pictureVisibility = Visibility.Collapsed;
+ ChatVisibility = Visibility.Collapsed;
+ SoundVisibility = Visibility.Collapsed;
+ HyperlinkVisibility = Visibility.Collapsed;
+ DokumentVisibility = Visibility.Collapsed;
+ _herunterladen = Visibility.Collapsed;
+
+ _picturePlaceHolderVisibility = Visibility.Visible;
}
//Dokument Ansicht
@@ -99,31 +113,43 @@ namespace ChatController.ChatKlassen
Username = username;
UserMessage = message;
SendTime = sendtime;
- ConvertetSendtimeString = convertedSendTimeString;
+ InternalSendTime = convertedSendTimeString;
- Dokpfad = (object) url;
+ Dokpfad = (object) url;
- if (isme)
- {
- ChatColor = new BrushConverter().ConvertFromString("#ff5e00") as SolidColorBrush;
- Posi = "Right";
- }
- else
- {
- ChatColor = new BrushConverter().ConvertFromString("#cccccc") as SolidColorBrush;
- Posi = "Left";
- }
+ Farbgebung(isme);
-
- DokumentVisibility = Visibility.Visible;
+
+ DokumentVisibility = Visibility.Visible;
_pictureVisibility = Visibility.Collapsed;
ChatVisibility = Visibility.Collapsed;
SoundVisibility = Visibility.Collapsed;
_herunterladen = Visibility.Collapsed;
HyperlinkVisibility = Visibility.Collapsed;
+ _picturePlaceHolderVisibility = Visibility.Collapsed;
+
}
+ private void Farbgebung(bool isme)
+ {
+ if (isme)
+ {
+ ChatColor = new BrushConverter().ConvertFromString("#ff5e00") as SolidColorBrush;
+ Posi = "Right";
+ _farbeRechtsColor = new BrushConverter().ConvertFromString("#636363") as SolidColorBrush;
+ _farbeLinksColor = new BrushConverter().ConvertFromString("#636363") as SolidColorBrush;
+ }
+ else
+ {
+ ChatColor = new BrushConverter().ConvertFromString("#FFFFFF") as SolidColorBrush; //"#cccccc"
+ Posi = "Left";
+ _farbeRechtsColor = new BrushConverter().ConvertFromString("#A0A0A0") as SolidColorBrush;
+ _farbeLinksColor = new BrushConverter().ConvertFromString("#A0A0A0") as SolidColorBrush;
+ }
+ }
+
+
#region Hyperlink Detection
private static readonly Regex UrlRegex = new Regex(@"(?#Protocol)(?:(?:ht|f)tp(?:s?)\:\/\/|~/|/)?(?#Username:Password)(?:\w+:\w+@)?(?#Subdomains)(?:(?:[-\w]+\.)+(?#TopLevel Domains)(?:com|org|net|gov|mil|biz|info|mobi|name|aero|jobs|museum|travel|[a-z]{2}))(?#Port)(?::[\d]{1,5})?(?#Directories)(?:(?:(?:/(?:[-\w~!$+|.,=]|%[a-f\d]{2})+)+|/)+|\?|#)?(?#Query)(?:(?:\?(?:[-\w~!$+|.,*:]|%[a-f\d{2}])+=(?:[-\w~!$+|.,*:=]|%[a-f\d]{2})*)(?:&(?:[-\w~!$+|.,*:]|%[a-f\d{2}])+=(?:[-\w~!$+|.,*:=]|%[a-f\d]{2})*)*)*(?#Anchor)(?:#(?:[-\w~!$+|.,*:=]|%[a-f\d]{2})*)?");
@@ -347,8 +373,9 @@ namespace ChatController.ChatKlassen
public Brush ChatColor { get; private set; }
public int ChatPosition { get; private set; }
public string Posi { get; private set; }
+ public string OriginalImageName { get; private set; }
- public DateTime ConvertetSendtimeString { get; set; }
+ public DateTime InternalSendTime { get; set; }
public Visibility MainVisibility { get; set; }
public Visibility ChatVisibility { get; set; }
@@ -362,6 +389,9 @@ namespace ChatController.ChatKlassen
private Visibility _pictureVisibility;
public Visibility PictureVisibility { get { return _pictureVisibility; } set { _pictureVisibility = value; OnPropertyChanged("PictureVisibility"); } }
+ private Visibility _picturePlaceHolderVisibility;
+ public Visibility PicturePlaceHolderVisibility { get { return _picturePlaceHolderVisibility; } set { _picturePlaceHolderVisibility = value; OnPropertyChanged("PicturePlaceHolderVisibility"); } }
+
private Visibility _gifPictureVisibility;
public Visibility GifPictureVisibility { get { return _gifPictureVisibility; } set { _gifPictureVisibility = value; OnPropertyChanged("GifPictureVisibility"); } }
@@ -382,6 +412,44 @@ namespace ChatController.ChatKlassen
public object[] Herunterladbares { get; private set; }
+
+ //Farbe Links MEssageHeader
+ private Brush _farbeLinksColor;
+ public Brush FarbeLinksColor
+ {
+ get
+ {
+ return _farbeLinksColor;
+ }
+ set
+ {
+
+ _farbeLinksColor = value;
+
+ OnPropertyChanged("FarbeLinksColor");
+ }
+ }
+
+ //Farbe Rechts MessageHeader
+ private Brush _farbeRechtsColor;
+ public Brush FarbeRechtsColor
+ {
+ get
+ {
+ return _farbeRechtsColor;
+ }
+ set
+ {
+
+ _farbeRechtsColor = value;
+
+ OnPropertyChanged("FarbeRechtsColor");
+ }
+ }
+
+
+
+
public event PropertyChangedEventHandler PropertyChanged;
protected virtual void OnPropertyChanged(string propertyName)
diff --git a/ChatController/ChatKlassen/KontaktlistBuilder.cs b/ChatController/ChatKlassen/KontaktlistBuilder.cs
index 98e588d..c9c527c 100644
--- a/ChatController/ChatKlassen/KontaktlistBuilder.cs
+++ b/ChatController/ChatKlassen/KontaktlistBuilder.cs
@@ -80,13 +80,29 @@ namespace ChatController.ChatKlassen
}
}
+ private Brush _kontaktChatColor;
+ public Brush KontaktChatColor
+ {
+ get
+ {
+ return _kontaktChatColor;
+ }
+ set
+ {
+
+ _kontaktChatColor = value;
+
+ OnPropertyChanged("KontaktChatColor");
+ }
+ }
+
public ImageSource Image { get; private set; }
public DateTime TimeStamp { get; set; }
public long GroupId { get; set; }
public long UserId { get; set; }
public long? CustomerPersonOid { get; set; }
- public KontaktlistBuilder(string name, ImageSource image, string lastMs, DateTime timestamp, long groupid,long? customerPersonOid)
+ public KontaktlistBuilder(string name, ImageSource image, string lastMs, DateTime timestamp, long groupid,long? customerPersonOid,bool onlyEmployee, int userCount)
{
Name = name;
ReceiveMs = lastMs;
@@ -96,6 +112,24 @@ namespace ChatController.ChatKlassen
CustomerPersonOid = customerPersonOid;
SetzeGelesen = 1;
+ if (CustomerPersonOid != null)
+ {
+ _kontaktChatColor = new BrushConverter().ConvertFromString("#3B7799") as SolidColorBrush;
+ }else if (onlyEmployee && userCount > 2)
+ {
+
+ //Alle gruppen werden grün
+ _kontaktChatColor = new BrushConverter().ConvertFromString("#45993B") as SolidColorBrush;
+
+ }
+ else
+ {
+ //Alles bleibt wie es war also schwarz
+ _kontaktChatColor = new BrushConverter().ConvertFromString("#000000") as SolidColorBrush;
+
+ }
+
+
}
//public KontaktlistBuilder(string name, StatusType statustyp, ImageSource image, long empfaengerid, ChatType typeChat, CompactCustomerDC customer)
diff --git a/ChatController/ChatMainControl.xaml b/ChatController/ChatMainControl.xaml
index 2b9ea30..33b7b46 100644
--- a/ChatController/ChatMainControl.xaml
+++ b/ChatController/ChatMainControl.xaml
@@ -8,7 +8,7 @@
d:DesignHeight="300" d:DesignWidth="300" >
-
+
@@ -125,7 +125,7 @@
-
+
@@ -198,7 +198,7 @@
-
+
@@ -227,8 +227,10 @@
+
+
@@ -266,15 +268,26 @@
-
+
-
+
+
+
+
+
+
+
+
+
+
+
+