private async void ReloadComments()
{
if ( LoadingRing.IsActive ) return;
MarkLoading();
HSLoader<HSComment> CLoader = new HSLoader<HSComment>( BindItem.Id, SHTarget.SCRIPT, Shared.ShRequest.GetComments )
{
ConvertResult = ( x ) => x.Flattern( y => y.Replies )
};
IList<HSComment> FirstPage = await CLoader.NextPage();
MarkNotLoading();
if ( BindItem.Encrypted )
{
if ( Crypt == null )
{
CommentsSource = new Observables<HSComment, HSComment>( CrippledComments( FirstPage ) );
CommentsSource.ConnectLoader( CLoader, CrippledComments );
}
else
{
CommentsSource = new Observables<HSComment, HSComment>( DecryptComments( FirstPage ) );
CommentsSource.ConnectLoader( CLoader, DecryptComments );
}
}
else
{
CommentsSource = new Observables<HSComment, HSComment>( FirstPage );
CommentsSource.ConnectLoader( CLoader );
}
CommentsSource.LoadStart += ( x, y ) => MarkLoading();
CommentsSource.LoadEnd += ( x, y ) => MarkNotLoading();
CommentList.ItemsSource = CommentsSource;
}