public static bool CheckCredentials( string sessionGuid_in, string ip_forLogPurposes_in, out int[] errors_out ) { List <int> _errorlist; Guid _sessionguid; Sessionuser _sessionuser; #region check... if (! SBO_CRD_Authentication.isSessionGuid_valid( sessionGuid_in, ip_forLogPurposes_in, out _sessionguid, out _sessionuser, out _errorlist, out errors_out ) ) { //// no need! //errors_out = _errors.ToArray(); return(false); } #endregion return(true); }
private static bool check( string sessionGuid_in, string ip_forLogPurposes_in, SO_CRD_Profile profile_in, out Sessionuser sessionUser_out, out List <int> errorlist_out ) { Guid _sessionguid; #region check... int[] _errors_out; if (!SBO_CRD_Authentication.isSessionGuid_valid( sessionGuid_in, ip_forLogPurposes_in, out _sessionguid, out sessionUser_out, out errorlist_out, out _errors_out )) { //// no need! //errors_out = _errors.ToArray(); return(false); } #endregion #region check Permissions... if ( !sessionUser_out.hasPermission( false, PermissionType.Profile__insert, PermissionType.Profile__update ) ) { errorlist_out.Add(ErrorType.profile__lack_of_permissions_to_write); return(false); } #endregion if (profile_in != null) { #region check Profile... if ( (profile_in.Name = profile_in.Name.Trim()).Length == 0 ) { errorlist_out.Add(ErrorType.profile__invalid_name); return(false); } #endregion } return(true); }
public static SO_vNWS_Tag getObject_byTag_andLanguage( string sessionGuid_in, string ip_forLogPurposes_in, long idTag_in, int idLanguage_in, out int[] errors_out ) { SO_vNWS_Tag _output = null; List <int> _errorlist; Guid _sessionguid; Sessionuser _sessionuser; #region check... if (!SBO_CRD_Authentication.isSessionGuid_valid( sessionGuid_in, ip_forLogPurposes_in, out _sessionguid, out _sessionuser, out _errorlist, out errors_out )) { //// no need! //errors_out = _errors.ToArray(); return(_output); } #endregion #region check Permissions . . . if ( !_sessionuser.hasPermission( PermissionType.Tag__select ) ) { _errorlist.Add(ErrorType.tag__lack_of_permissions_to_read); errors_out = _errorlist.ToArray(); return(_output); } #endregion _output = DO_vNWS_Tag.getObject_byTag_andL( idTag_in, idLanguage_in, null ); errors_out = _errorlist.ToArray(); return(_output); }
public static SO_NWS_Attachment getObject( string sessionGuid_in, string ip_forLogPurposes_in, long idAttachment_in, out int[] errors_out ) { SO_NWS_Attachment _output = null; List <int> _errorlist; Guid _sessionguid; Sessionuser _sessionuser; #region check... if (!SBO_CRD_Authentication.isSessionGuid_valid( sessionGuid_in, ip_forLogPurposes_in, out _sessionguid, out _sessionuser, out _errorlist, out errors_out )) { //// no need! //errors_out = _errors.ToArray(); return(_output); } #endregion #region check Permissions... if ( !_sessionuser.hasPermission( false, PermissionType.News__select_OnSchedule, PermissionType.News__select_OffSchedule ) ) { _errorlist.Add(ErrorType.news__lack_of_permissions_to_read); errors_out = _errorlist.ToArray(); return(_output); } #endregion _output = DO_NWS_Attachment.getObject( idAttachment_in, null ); errors_out = _errorlist.ToArray(); return(_output); }
public static SO_vDIC_Language[] getRecord_Language( string sessionGuid_in, string ip_forLogPurposes_in, int idLanguage_in, int page_orderBy_in, long page_in, int page_itemsPerPage_in, out long page_itemsCount_out, out int[] errors_out ) { page_itemsCount_out = -1L; SO_vDIC_Language[] _output = null; List <int> _errorlist; Guid _sessionguid; Sessionuser _sessionuser; #region check... if (!SBO_CRD_Authentication.isSessionGuid_valid( sessionGuid_in, ip_forLogPurposes_in, out _sessionguid, out _sessionuser, out _errorlist, out errors_out )) { //// no need! //errors_out = _errors.ToArray(); return(_output); } #endregion // ToDos: here! check permissions... not very important return(DO_vDIC_Language.getRecord_Language( idLanguage_in, page_orderBy_in, page_in, page_itemsPerPage_in, out page_itemsCount_out, null )); }
public static void insObject_CreateUser( string sessionGuid_in, string ip_forLogPurposes_in, string login_in, out int[] errors_out ) { List <int> _errorlist; Guid _sessionguid; Sessionuser _sessionuser; #region check... if (!SBO_CRD_Authentication.isSessionGuid_valid( sessionGuid_in, ip_forLogPurposes_in, out _sessionguid, out _sessionuser, out _errorlist, out errors_out )) { //// no need! //errors_out = _errors.ToArray(); return; } #endregion // must have permission to create user // ... // password = login insObject_CreateUser( _sessionuser, login_in, false, ref _errorlist, null ); errors_out = _errorlist.ToArray(); }
private static bool check( string sessionGuid_in, string ip_forLogPurposes_in, ref SO_NWS_Attachment attachment_ref, out Guid sessionGuid_out, out Sessionuser sessionUser_out, out List <int> errorlist_out ) { #region check... if (!SBO_CRD_Authentication.isSessionGuid_valid( sessionGuid_in, ip_forLogPurposes_in, out sessionGuid_out, out sessionUser_out, out errorlist_out )) { return(false); } #endregion #region check Permissions . . . if ( !sessionUser_out.hasPermission( false, PermissionType.News__insert, PermissionType.News__update_Approved, PermissionType.News__update_Mine_notApproved ) ) { errorlist_out.Add(ErrorType.news__lack_of_permissions_to_write); return(false); } #endregion #region //check Attachment ... (nothing to check!) #endregion return(true); }
public static SO_vCRD_ProfilePermission[] getRecord_ofProfilePermission_byProfile( string sessionGuid_in, string ip_forLogPurposes_in, long IDProfile_search_in, int page_orderBy_in, long page_in, int page_itemsPerPage_in, out long page_itemsCount_out, out int[] errors_out ) { page_itemsCount_out = -1L; SO_vCRD_ProfilePermission[] _output = null; List <int> _errorlist; Guid _sessionguid; Sessionuser _sessionuser; #region check... if (!SBO_CRD_Authentication.isSessionGuid_valid( sessionGuid_in, ip_forLogPurposes_in, out _sessionguid, out _sessionuser, out _errorlist, out errors_out )) { //// no need! //errors_out = _errors.ToArray(); return(_output); } #endregion #region check Admin . . . if ( !_sessionuser.hasPermission(PermissionType.Profile__select) ) { _errorlist.Add(ErrorType.profile__lack_of_permissions_to_read); errors_out = _errorlist.ToArray(); return(_output); } #endregion _output = DO_vCRD_ProfilePermission.getRecord_byProfile( IDProfile_search_in, page_orderBy_in, page_in, page_itemsPerPage_in, out page_itemsCount_out, null ); errors_out = _errorlist.ToArray(); return(_output); }
public static void delLanguage( string sessionGuid_in, string ip_forLogPurposes_in, int idLanguage_in, out int[] errors_out ) { List <int> _errorlist; Guid _sessionguid; Sessionuser _sessionuser; #region check... if (!SBO_CRD_Authentication.isSessionGuid_valid( sessionGuid_in, ip_forLogPurposes_in, out _sessionguid, out _sessionuser, out _errorlist, out errors_out )) { //// no need! //errors_out = _errors.ToArray(); return; } #endregion #region check permissions... if (!_sessionuser.hasPermission(PermissionType.Language__delete)) { _errorlist.Add(ErrorType.language__lack_of_permissions_to_delete); errors_out = _errorlist.ToArray(); return; } #endregion #region check existence... SO_DIC_Language _language = ...; SO_DIC_Language _language = DO_DIC_Language.getObject(idLanguage_in); if (_language == null) { _errorlist.Add(ErrorType.data__not_found); errors_out = _errorlist.ToArray(); return; } #endregion Exception _exception = null; #region DBConnection _con = DO__Utilities.DBConnection_createInstance(...); DBConnection _con = DO__Utilities.DBConnection_createInstance( DO__Utilities.DBServerType, DO__Utilities.DBConnectionstring, DO__Utilities.DBLogfile ); #endregion try { _con.Open(); _con.Transaction.Begin(); DO_DIC_LanguageApplication.delRecord_byLanguage( idLanguage_in, _con ); DO_DIC_TextLanguage.delRecord_byText( _language.TX_Name, _con ); // ONLY language name translations (short), NOT all translations (all) DO_DIC_TextLanguage.delRecord_byLanguage_short( idLanguage_in, _con ); DO_DIC_Language.delObject( idLanguage_in, _con ); DO_DIC_Text.delObject( _language.TX_Name, _con ); #region _con.Transaction.Commit(); if (_con.Transaction.InTransaction) { _con.Transaction.Commit(); } #endregion _errorlist.Add(ErrorType.language__successfully_deleted__WARNING); } catch (Exception _ex) { #region _con.Transaction.Rollback(); if ( _con.IsOpen && _con.Transaction.InTransaction ) { _con.Transaction.Rollback(); } #endregion _exception = _ex; } finally { #region _con.Transaction.Terminate(); _con.Close(); _con.Dispose(); if (_con.IsOpen) { if (_con.Transaction.InTransaction) { _con.Transaction.Terminate(); } _con.Close(); } _con.Dispose(); #endregion } if (_exception != null) { #region SBO_LOG_Log.log(ErrorType.data); OGen.NTier.Kick.Libraries.BusinessLayer.SBO_LOG_Log.log( _sessionuser, LogType.error, ErrorType.data, -1L, _sessionuser.IDApplication, "{0}", new string[] { _exception.Message } ); #endregion _errorlist.Add(ErrorType.data); } errors_out = _errorlist.ToArray(); }
public static SO_LOG_Log[] getRecord_generic( string sessionGuid_in, string ip_forLogPurposes_in, int IDLogtype_search_in, long IDUser_search_in, int IDErrortype_search_in, DateTime Stamp_begin_search_in, DateTime Stamp_end_search_in, bool Read_search_in, bool Read_search_isNull_in, int idApplication_in, bool idApplication_isNull_in, int page_orderBy_in, long page_in, int page_itemsPerPage_in, out long page_itemsCount_out, out int[] errors_out ) { page_itemsCount_out = -1L; List <int> _errorlist; Guid _sessionguid; Sessionuser _sessionuser; #region check... if (!SBO_CRD_Authentication.isSessionGuid_valid( sessionGuid_in, ip_forLogPurposes_in, out _sessionguid, out _sessionuser, out _errorlist, out errors_out )) { //// no need! //errors_out = _errors.ToArray(); return(null); } #endregion #region check Permissions... if ( !_sessionuser.hasPermission(PermissionType.Log__read) ) { _errorlist.Add(ErrorType.log__lack_of_permissions_to_read); errors_out = _errorlist.ToArray(); return(null); } #endregion return(DO_LOG_Log.getRecord_generic( IDLogtype_search_in, IDUser_search_in, IDErrortype_search_in, Stamp_begin_search_in, Stamp_end_search_in, Read_search_isNull_in ? null : (object)Read_search_in, idApplication_isNull_in ? null : (object)idApplication_in, page_orderBy_in, page_in, page_itemsPerPage_in, out page_itemsCount_out, null )); }
public static void setUserProfiles( string sessionGuid_in, string ip_forLogPurposes_in, long idUser_in, long[] idProfiles_in, out int[] errors_out ) { List <int> _errorlist; Guid _sessionguid; Sessionuser _sessionuser; #region check... if (!SBO_CRD_Authentication.isSessionGuid_valid( sessionGuid_in, ip_forLogPurposes_in, out _sessionguid, out _sessionuser, out _errorlist, out errors_out )) { //// no need! //errors_out = _errors.ToArray(); return; } #endregion #region check permissions... if ( !_sessionuser.hasPermission(PermissionType.User__insert) && !_sessionuser.hasPermission(PermissionType.User__update) ) { _errorlist.Add(ErrorType.lack_of_permissions); errors_out = _errorlist.ToArray(); return; } #endregion Exception _exception = null; #region DBConnection _con = DO__Utilities.DBConnection_createInstance(...); DBConnection _con = DO__Utilities.DBConnection_createInstance( DO__Utilities.DBServerType, DO__Utilities.DBConnectionstring, DO__Utilities.DBLogfile ); #endregion try { _con.Open(); _con.Transaction.Begin(); DO_CRD_UserProfile.delRecord_byUser( idUser_in, _con ); foreach (long _idprofile in idProfiles_in) { DO_CRD_UserProfile.setObject( new SO_CRD_UserProfile( idUser_in, _idprofile ), true, _con ); } _errorlist.Add(ErrorType.user_profile__successfully_set__WARNING); _con.Transaction.Commit(); } catch (Exception _ex) { #region _con.Transaction.Rollback(); if ( _con.IsOpen && _con.Transaction.InTransaction ) { _con.Transaction.Rollback(); } #endregion _exception = _ex; } finally { #region _con.Transaction.Terminate(); _con.Close(); _con.Dispose(); if (_con.IsOpen) { if (_con.Transaction.InTransaction) { _con.Transaction.Terminate(); } _con.Close(); } _con.Dispose(); #endregion } if (_exception != null) { #region SBO_LOG_Log.log(ErrorType.data); OGen.NTier.Kick.Libraries.BusinessLayer.SBO_LOG_Log.log( _sessionuser, LogType.error, ErrorType.data, -1L, _sessionuser.IDApplication, "{0}", new string[] { _exception.Message } ); #endregion _errorlist.Add(ErrorType.data); } errors_out = _errorlist.ToArray(); }
public static void Log( string sessionGuid_in, string ip_forLogPurposes_in, int logtype_in, int errortype_in, long idPermission_in, int idApplication_in, string format_in, string[] args_in ) { int[] _errors; List <int> _errorlist; Guid _sessionguid; Sessionuser _sessionuser; if ( (!string.IsNullOrEmpty(sessionGuid_in)) && SBO_CRD_Authentication.isSessionGuid_valid( sessionGuid_in, ip_forLogPurposes_in, out _sessionguid, out _sessionuser, out _errorlist, out _errors ) ) { log( _sessionuser, logtype_in, errortype_in, idPermission_in, _sessionuser.IDApplication, format_in, args_in ); } else { log( null, logtype_in, errortype_in, idPermission_in, idApplication_in, format_in, args_in ); } }
public static void MarkRead( string sessionGuid_in, string ip_forLogPurposes_in, int idLog_in, out int[] errors_out ) { List <int> _errorlist = new List <int>(); Guid _sessionguid; Sessionuser _sessionuser; #region check... if (!SBO_CRD_Authentication.isSessionGuid_valid( sessionGuid_in, ip_forLogPurposes_in, out _sessionguid, out _sessionuser, out _errorlist, out errors_out )) { //// no need! //errors_out = _errors.ToArray(); return; } #endregion #region check permissions... if ( !_sessionuser.hasPermission(PermissionType.Log__mark_read) ) { _errorlist.Add(ErrorType.lack_of_permissions); errors_out = _errorlist.ToArray(); return; } #endregion SO_LOG_Log _log = DO_LOG_Log.getObject( idLog_in, null ); if (_log == null) { _errorlist.Add(ErrorType.data__not_found); errors_out = _errorlist.ToArray(); return; } else if ( !_log.IFUser__read_isNull || !_log.Stamp__read_isNull ) { _errorlist.Add(ErrorType.log__already_marked_read); errors_out = _errorlist.ToArray(); return; } else { _log.IFUser__read = _sessionuser.IDUser; _log.Stamp__read = DateTime.Now; DO_LOG_Log.updObject( _log, true, null ); _errorlist.Add(ErrorType.log__marked_read__WARNING); } errors_out = _errorlist.ToArray(); }
private static bool check( string sessionGuid_in, string ip_forLogPurposes_in, ref SO_NWS_Author author_ref, out Guid sessionGuid_out, out Sessionuser sessionUser_out, out List <int> errorlist_out ) { #region check... if (!SBO_CRD_Authentication.isSessionGuid_valid( sessionGuid_in, ip_forLogPurposes_in, out sessionGuid_out, out sessionUser_out, out errorlist_out )) { return(false); } #endregion #region check Permissions... if ( !sessionUser_out.hasPermission( false, PermissionType.Author__insert, PermissionType.Author__update ) ) { errorlist_out.Add(ErrorType.author__lack_of_permissions_to_write); return(false); } if ( !sessionUser_out.hasPermission(PermissionType.Author__approve) && ( !author_ref.Approved_date_isNull || !author_ref.IFUser__Approved_isNull ) ) { errorlist_out.Add(ErrorType.author__lack_of_permissions_to_approve); return(false); } #endregion #region check Author... if ( (author_ref.Name = author_ref.Name.Trim()).Length == 0 ) { errorlist_out.Add(ErrorType.author__invalid_name); return(false); } #endregion return(true); }
public static void setObject( string sessionGuid_in, string ip_forLogPurposes_in, long[] idProfile_in, out int[] errors_out ) { List <int> _errorlist; Guid _sessionguid; Sessionuser _sessionuser; #region check... if (!SBO_CRD_Authentication.isSessionGuid_valid( sessionGuid_in, ip_forLogPurposes_in, out _sessionguid, out _sessionuser, out _errorlist, out errors_out )) { //// no need! //errors_out = _errors.ToArray(); return; } #endregion #region check Permissions... if ( !_sessionuser.hasPermission(PermissionType.Profile__insert) ) { _errorlist.Add(ErrorType.profile__lack_of_permissions_to_write); errors_out = _errorlist.ToArray(); return; } #endregion Exception _exception = null; #region DBConnection _con = DO__Utilities.DBConnection_createInstance(...); DBConnection _con = DO__Utilities.DBConnection_createInstance( DO__Utilities.DBServerType, DO__Utilities.DBConnectionstring, DO__Utilities.DBLogfile ); #endregion try { _con.Open(); _con.Transaction.Begin(); DO_NET_Profile__default.delRecord_all( _sessionuser.IDApplication, _con ); for (int i = 0; i < idProfile_in.Length; i++) { //if (!DO_vNET_Profile.isObject_inRecord_all( // idProfile_in[i], // _sessionuser.IDApplication //)) { DO_NET_Profile__default.setObject( new SO_NET_Profile__default( idProfile_in[i] ), false, _con ); //} } #region _con.Transaction.Commit(); if (_con.Transaction.InTransaction) { _con.Transaction.Commit(); } #endregion _errorlist.Add(ErrorType.profile__successfully_updated__WARNING); } catch (Exception _ex) { #region _con.Transaction.Rollback(); if ( _con.IsOpen && _con.Transaction.InTransaction ) { _con.Transaction.Rollback(); } #endregion _exception = _ex; } finally { #region _con.Transaction.Terminate(); _con.Close(); _con.Dispose(); if (_con.IsOpen) { if (_con.Transaction.InTransaction) { _con.Transaction.Terminate(); } _con.Close(); } _con.Dispose(); #endregion } if (_exception != null) { #region SBO_LOG_Log.log(ErrorType.data); OGen.NTier.Kick.Libraries.BusinessLayer.SBO_LOG_Log.log( _sessionuser, LogType.error, ErrorType.data, -1L, _sessionuser.IDApplication, "{0}", new string[] { _exception.Message } ); #endregion _errorlist.Add(ErrorType.data); } errors_out = _errorlist.ToArray(); return; }
public static SO_vNWS_Author[] getRecord_all( #region params... string sessionGuid_in, string ip_forLogPurposes_in, int page_orderBy_in, long page_in, int page_itemsPerPage_in, out long page_itemsCount_out, out int[] errors_out #endregion ) { page_itemsCount_out = -1L; SO_vNWS_Author[] _output = null; List <int> _errorlist; Guid _sessionguid; Sessionuser _sessionuser; #region check... if (!SBO_CRD_Authentication.isSessionGuid_valid( sessionGuid_in, ip_forLogPurposes_in, out _sessionguid, out _sessionuser, out _errorlist, out errors_out )) { //// no need! //errors_out = _errors.ToArray(); return(_output); } #endregion #region check Permissions... if ( !_sessionuser.hasPermission( PermissionType.Author__select_notApproved ) ) { _errorlist.Add(ErrorType.author__lack_of_permissions_to_read__not_approved); errors_out = _errorlist.ToArray(); return(_output); } #endregion _output = DO_vNWS_Author.getRecord_all( _sessionuser.IDApplication, page_orderBy_in, page_in, page_itemsPerPage_in, out page_itemsCount_out, null ); errors_out = _errorlist.ToArray(); return(_output); }
public static void updObject_Approve( string sessionGuid_in, string ip_forLogPurposes_in, long idAuthor_in, out int[] errors_out ) { List <int> _errorlist; Guid _sessionguid; Sessionuser _sessionuser; #region check... if (!SBO_CRD_Authentication.isSessionGuid_valid( sessionGuid_in, ip_forLogPurposes_in, out _sessionguid, out _sessionuser, out _errorlist, out errors_out )) { //// no need! //errors_out = _errors.ToArray(); return; } #endregion #region check Permissions... if ( !_sessionuser.hasPermission( PermissionType.Author__approve ) ) { _errorlist.Add(ErrorType.author__lack_of_permissions_to_approve); errors_out = _errorlist.ToArray(); return; } #endregion #region check existence... SO_NWS_Author _author; if ( idAuthor_in <= 0 || ( (_author = DO_NWS_Author.getObject( idAuthor_in )) == null ) ) { _errorlist.Add(ErrorType.data__not_found); errors_out = _errorlist.ToArray(); return; } #endregion _author.Approved_date = DateTime.Now; _author.IFUser__Approved = _sessionuser.IDUser; DO_NWS_Author.updObject( _author, true, null ); _errorlist.Add(ErrorType.author__successfully_approved__WARNING); errors_out = _errorlist.ToArray(); }
public static void insLanguage( string sessionGuid_in, string ip_forLogPurposes_in, SO_DIC__TextLanguage[] languageName_in, SO_DIC__TextLanguage[] existingLanguagesInNewLanguage_in, out int[] errors_out ) { List <int> _errorlist; Guid _sessionguid; Sessionuser _sessionuser; #region check... if (!SBO_CRD_Authentication.isSessionGuid_valid( sessionGuid_in, ip_forLogPurposes_in, out _sessionguid, out _sessionuser, out _errorlist, out errors_out )) { //// no need! //errors_out = _errors.ToArray(); return; } #endregion #region check permissions... if (!_sessionuser.hasPermission(PermissionType.Language__insert)) { _errorlist.Add(ErrorType.language__lack_of_permissions_to_write); errors_out = _errorlist.ToArray(); return; } #endregion Exception _exception = null; #region DBConnection _con = DO__Utilities.DBConnection_createInstance(...); DBConnection _con = DO__Utilities.DBConnection_createInstance( DO__Utilities.DBServerType, DO__Utilities.DBConnectionstring, DO__Utilities.DBLogfile ); #endregion try { _con.Open(); _con.Transaction.Begin(); #region long _idtext = DO_DIC_Text.insObject(...); #region SO_DIC_Text _text = ...; SO_DIC_Text _text = new SO_DIC_Text( -1L, -1, -1 ); _text.IFApplication_isNull = true; _text.SourceTableField_ref_isNull = true; #endregion long _idtext = DO_DIC_Text.insObject( _text, true, _con ); #endregion #region int _idlanguage = DO_DIC_Language.insObject(...); int _idlanguage = DO_DIC_Language.insObject( new SO_DIC_Language( -1, _idtext ), true, _con ); #endregion for (int i = 0; i < languageName_in.Length; i++) { updObject( _con, _idtext, (languageName_in[i].IFLanguage > 0) // name of the new language on existing languages ? languageName_in[i] // name of the new language (on new language) : new SO_DIC__TextLanguage( _idlanguage, languageName_in[i].Text ) ); } SO_DIC_TextLanguage _textlanguage; for (int i = 0; i < existingLanguagesInNewLanguage_in.Length; i++) { _textlanguage = new SO_DIC_TextLanguage(); _textlanguage.IFText = DO_DIC_Language.getObject( existingLanguagesInNewLanguage_in[i].IFLanguage ).TX_Name; _textlanguage.IFLanguage = _idlanguage; if (existingLanguagesInNewLanguage_in[i].Text.Length > 8000) { _textlanguage.Text__large = existingLanguagesInNewLanguage_in[i].Text; _textlanguage.Text__small_isNull = true; } else { _textlanguage.Text__large_isNull = true; _textlanguage.Text__small = existingLanguagesInNewLanguage_in[i].Text; } DO_DIC_TextLanguage.setObject( _textlanguage, true, _con ); } #region _con.Transaction.Commit(); if (_con.Transaction.InTransaction) { _con.Transaction.Commit(); } #endregion _errorlist.Add(ErrorType.language__successfully_created__WARNING); } catch (Exception _ex) { #region _con.Transaction.Rollback(); if ( _con.IsOpen && _con.Transaction.InTransaction ) { _con.Transaction.Rollback(); } #endregion _exception = _ex; } finally { #region _con.Transaction.Terminate(); _con.Close(); _con.Dispose(); if (_con.IsOpen) { if (_con.Transaction.InTransaction) { _con.Transaction.Terminate(); } _con.Close(); } _con.Dispose(); #endregion } if (_exception != null) { #region SBO_LOG_Log.log(ErrorType.data); OGen.NTier.Kick.Libraries.BusinessLayer.SBO_LOG_Log.log( _sessionuser, LogType.error, ErrorType.data, -1L, _sessionuser.IDApplication, "{0}", new string[] { _exception.Message } ); #endregion _errorlist.Add(ErrorType.data); } errors_out = _errorlist.ToArray(); }
public static void Login( string login_in, string password_in, string sessionGuid_in, string ip_forLogPurposes_in, int idApplication_in, out long idUser_out, out long[] idPermissions_out, out int[] errors_out ) { idPermissions_out = null; idUser_out = -1L; Guid _sessionguid; List <int> _errorlist; #region check... if (!SBO_CRD_Authentication.isSessionGuid_valid( sessionGuid_in, out _sessionguid, out _errorlist, out errors_out )) { //// no need! //errors_out = _errors.ToArray(); return; } if (string.IsNullOrEmpty(login_in)) { _errorlist.Add(ErrorType.authentication__invalid_login); errors_out = _errorlist.ToArray(); return; } #endregion string _login; login( DO_CRD_User.getObject_byLogin( login_in, idApplication_in ), _sessionguid, login_in, ip_forLogPurposes_in, true, password_in, out idUser_out, out _login, out idPermissions_out, ref _errorlist ); errors_out = _errorlist.ToArray(); }
public static void ChangePassword( string sessionGuid_in, string ip_forLogPurposes_in, string password_old_in, string password_new_in, out int[] errors_out ) { List <int> _errorlist; Guid _sessionguid; Sessionuser _sessionuser; #region check... if (!SBO_CRD_Authentication.isSessionGuid_valid( sessionGuid_in, ip_forLogPurposes_in, out _sessionguid, out _sessionuser, out _errorlist, out errors_out )) { //// no need! //errors_out = _errors.ToArray(); return; } SO_CRD_User _user = DO_CRD_User.getObject(_sessionuser.IDUser); if (_user == null) { _errorlist.Add(ErrorType.authentication__no_such_user); UserSession.Remove(_sessionguid); errors_out = _errorlist.ToArray(); return; } #endregion bool _constraint; if ( !SimpleHash.VerifyHash( password_old_in, SimpleHash.HashAlgotithm.SHA256, _user.Password ) ) { _errorlist.Add(ErrorType.authentication__change_password__wrong_password); } else if (string.IsNullOrEmpty(password_new_in)) { _errorlist.Add(ErrorType.authentication__change_password__invalid_password); } else { _user.Password = SimpleHash.ComputeHash( password_new_in, SimpleHash.HashAlgotithm.SHA256, null ); DO_CRD_User.updObject( _user, true, out _constraint ); } errors_out = _errorlist.ToArray(); }
public static void delObject( string sessionGuid_in, string ip_forLogPurposes_in, long idAuthor_in, out int[] errors_out ) { List <int> _errorlist; Guid _sessionguid; Sessionuser _sessionuser; #region check... if (!SBO_CRD_Authentication.isSessionGuid_valid( sessionGuid_in, ip_forLogPurposes_in, out _sessionguid, out _sessionuser, out _errorlist, out errors_out )) { //// no need! //errors_out = _errors.ToArray(); return; } #endregion #region check Permissions... if ( !_sessionuser.hasPermission( PermissionType.Author__delete ) ) { _errorlist.Add(ErrorType.author__lack_of_permissions_to_delete); errors_out = _errorlist.ToArray(); return; } #endregion #region check existence... SO_NWS_Author _author; if ( idAuthor_in <= 0 || ( (_author = DO_NWS_Author.getObject( idAuthor_in )) == null ) ) { _errorlist.Add(ErrorType.data__not_found); errors_out = _errorlist.ToArray(); return; } #endregion #region check Permissions... (more) if ( // is approved ( !_author.IFUser__Approved_isNull || !_author.Approved_date_isNull ) && // and no permission to approve !_sessionuser.hasPermission( PermissionType.Author__approve ) ) { _errorlist.Add(ErrorType.author__lack_of_permissions_to_delete_approved); errors_out = _errorlist.ToArray(); return; } #endregion #region check References... if ( (DO_NWS_ContentAuthor.getCount_inRecord_byAuthor( idAuthor_in ) > 0) ) { _errorlist.Add(ErrorType.data__constraint_violation); errors_out = _errorlist.ToArray(); return; } #endregion Exception _exception = null; #region DBConnection _con = DO__Utilities.DBConnection_createInstance(...); DBConnection _con = DO__Utilities.DBConnection_createInstance( DO__Utilities.DBServerType, DO__Utilities.DBConnectionstring, DO__Utilities.DBLogfile ); #endregion try { //_con.Open(); //_con.Transaction.Begin(); DO_NWS_Author.delObject( idAuthor_in, _con ); _errorlist.Add(ErrorType.author__successfully_deleted__WARNING); #region _con.Transaction.Commit(); if ( _con.IsOpen && _con.Transaction.InTransaction ) { _con.Transaction.Commit(); } #endregion } catch (Exception _ex) { #region _con.Transaction.Rollback(); if ( _con.IsOpen && _con.Transaction.InTransaction ) { _con.Transaction.Rollback(); } #endregion _exception = _ex; } finally { #region _con.Transaction.Terminate(); _con.Close(); _con.Dispose(); if (_con.IsOpen) { if (_con.Transaction.InTransaction) { _con.Transaction.Terminate(); } _con.Close(); } _con.Dispose(); #endregion } if (_exception != null) { #region SBO_LOG_Log.Log(ErrorType.data); OGen.NTier.Kick.Libraries.BusinessLayer.SBO_LOG_Log.log( _sessionuser, LogType.error, ErrorType.data, -1L, _sessionuser.IDApplication, "{0}", new string[] { _exception.Message } ); #endregion _errorlist.Add(ErrorType.data); } errors_out = _errorlist.ToArray(); }
public static void setSupportedLanguages( string sessionGuid_in, string ip_forLogPurposes_in, int[] idLanguages_in, out int[] errors_out ) { List <int> _errorlist; Guid _sessionguid; Sessionuser _sessionuser; #region check... if (!SBO_CRD_Authentication.isSessionGuid_valid( sessionGuid_in, ip_forLogPurposes_in, out _sessionguid, out _sessionuser, out _errorlist, out errors_out )) { //// no need! //errors_out = _errors.ToArray(); return; } #endregion #region check permissions... if (!_sessionuser.hasPermission(PermissionType.Language__set_supported)) { _errorlist.Add(ErrorType.language__lack_of_permissions_to_set); errors_out = _errorlist.ToArray(); return; } #endregion Exception _exception = null; #region DBConnection _con = DO__Utilities.DBConnection_createInstance(...); DBConnection _con = DO__Utilities.DBConnection_createInstance( DO__Utilities.DBServerType, DO__Utilities.DBConnectionstring, DO__Utilities.DBLogfile ); #endregion try { if ( (idLanguages_in != null) && (idLanguages_in.Length > 0) ) { _con.Open(); _con.Transaction.Begin(); } DO_DIC_LanguageApplication.delRecord_byApplication( _sessionuser.IDApplication, _con ); if ( (idLanguages_in != null) && (idLanguages_in.Length > 0) ) { for (int i = 0; i < idLanguages_in.Length; i++) { DO_DIC_LanguageApplication.setObject( new SO_DIC_LanguageApplication( idLanguages_in[i], _sessionuser.IDApplication ), true, _con ); } } #region _con.Transaction.Commit(); if (_con.Transaction.InTransaction) { _con.Transaction.Commit(); } #endregion _errorlist.Add(ErrorType.language__successfully_set__WARNING); } catch (Exception _ex) { #region _con.Transaction.Rollback(); if ( _con.IsOpen && _con.Transaction.InTransaction ) { _con.Transaction.Rollback(); } #endregion _exception = _ex; } finally { #region _con.Transaction.Terminate(); _con.Close(); _con.Dispose(); if (_con.IsOpen) { if (_con.Transaction.InTransaction) { _con.Transaction.Terminate(); } _con.Close(); } _con.Dispose(); #endregion } if (_exception != null) { #region SBO_LOG_Log.log(ErrorType.data); OGen.NTier.Kick.Libraries.BusinessLayer.SBO_LOG_Log.log( _sessionuser, LogType.error, ErrorType.data, -1L, _sessionuser.IDApplication, "{0}", new string[] { _exception.Message } ); #endregion _errorlist.Add(ErrorType.data); } errors_out = _errorlist.ToArray(); }
public static SO_NWS_ContentAuthor[] getRecord_byContent( #region params... string sessionGuid_in, string ip_forLogPurposes_in, long idContent_search_in, int page_orderBy_in, long page_in, int page_itemsPerPage_in, out long page_itemsCount_out, out int[] errors_out #endregion ) { page_itemsCount_out = -1L; SO_NWS_ContentAuthor[] _output = null; List <int> _errorlist; Guid _sessionguid; Sessionuser _sessionuser; #region check... if (!SBO_CRD_Authentication.isSessionGuid_valid( sessionGuid_in, ip_forLogPurposes_in, out _sessionguid, out _sessionuser, out _errorlist, out errors_out )) { //// no need! //errors_out = _errors.ToArray(); return(_output); } #endregion #region check Permissions... if ( !_sessionuser.hasPermission( false, PermissionType.News__select_OffSchedule, PermissionType.News__select_OnSchedule ) ) { _errorlist.Add(ErrorType.news__lack_of_permissions_to_read); errors_out = _errorlist.ToArray(); return(_output); } #endregion _output = DO_NWS_ContentAuthor.getRecord_byContent( idContent_search_in, page_orderBy_in, page_in, page_itemsPerPage_in, out page_itemsCount_out, null ); errors_out = _errorlist.ToArray(); return(_output); }
private static bool check( string sessionGuid_in, string ip_forLogPurposes_in, ref SO_NWS_Source source_ref, out Guid sessionGuid_out, out Sessionuser sessionUser_out, out List <int> errorlist_out ) { #region check... if (!SBO_CRD_Authentication.isSessionGuid_valid( sessionGuid_in, ip_forLogPurposes_in, out sessionGuid_out, out sessionUser_out, out errorlist_out )) { return(false); } #endregion #region check Permissions . . . if ( !sessionUser_out.hasPermission( false, PermissionType.Source__insert, PermissionType.Source__update ) ) { errorlist_out.Add(ErrorType.source__lack_of_permissions_to_write); return(false); } if ( !sessionUser_out.hasPermission(PermissionType.Source__approve) && ( !source_ref.Approved_date_isNull || !source_ref.IFUser__Approved_isNull ) ) { errorlist_out.Add(ErrorType.source__lack_of_permissions_to_approve); return(false); } #endregion // ToDos: here! check parent existence // ToDos: here! check if parent within same application // ToDos: here! check if any other checkings needed ... if (source_ref.IFSource__parent <= 0) { source_ref.IFSource__parent_isNull = true; } #region check Source ... if ( (source_ref.Name = source_ref.Name.Trim()).Length == 0 ) { errorlist_out.Add(ErrorType.source__invalid_name); return(false); } #endregion return(true); }
public static SO_CRD_Permission[] getRecord_all( string sessionGuid_in, string ip_forLogPurposes_in, bool allProfiles_notJustApplication_in, int page_orderBy_in, long page_in, int page_itemsPerPage_in, out long page_itemsCount_out, out int[] errors_out ) { page_itemsCount_out = -1L; SO_CRD_Permission[] _output = null; List <int> _errorlist; Guid _sessionguid; Sessionuser _sessionuser; #region check... if (!SBO_CRD_Authentication.isSessionGuid_valid( sessionGuid_in, ip_forLogPurposes_in, out _sessionguid, out _sessionuser, out _errorlist, out errors_out )) { //// no need! //errors_out = _errors.ToArray(); return(_output); } #endregion #region check Permissions . . . if ( !_sessionuser.hasPermission(PermissionType.Permission__select) ) { _errorlist.Add(ErrorType.permission__lack_of_permissions_to_read); errors_out = _errorlist.ToArray(); return(_output); } #endregion _output = DO_CRD_Permission.getRecord_all( allProfiles_notJustApplication_in ? (object)_sessionuser.IDApplication : null, page_orderBy_in, page_in, page_itemsPerPage_in, out page_itemsCount_out, null ); errors_out = _errorlist.ToArray(); return(_output); }
private static bool check( string sessionGuid_in, string ip_forLogPurposes_in, ref SO_NWS_Tag tag_ref, OGen.NTier.Kick.Libraries.DataLayer.Shared.Structures.SO_DIC__TextLanguage[] tx_Name_in, out Guid sessionGuid_out, out Sessionuser sessionUser_out, out List <int> errorlist_out ) { #region check... if (!SBO_CRD_Authentication.isSessionGuid_valid( sessionGuid_in, ip_forLogPurposes_in, out sessionGuid_out, out sessionUser_out, out errorlist_out )) { return(false); } #endregion #region check Permissions . . . if ( !sessionUser_out.hasPermission( false, PermissionType.Tag__insert, PermissionType.Tag__update ) ) { errorlist_out.Add(ErrorType.tag__lack_of_permissions_to_write); return(false); } if ( !sessionUser_out.hasPermission(PermissionType.Tag__approve) && ( !tag_ref.Approved_date_isNull || !tag_ref.IFUser__Approved_isNull ) ) { errorlist_out.Add(ErrorType.tag__lack_of_permissions_to_approve); return(false); } #endregion // ToDos: here! check parent existence // ToDos: here! check if parent within same application // ToDos: here! check if any other checkings needed ... if (tag_ref.IFTag__parent <= 0) { tag_ref.IFTag__parent_isNull = true; } #region check Tag ... if ( (tx_Name_in == null) || (tx_Name_in.Length == 0) ) { errorlist_out.Add(ErrorType.tag__invalid_name); return(false); } else { foreach (SO_DIC__TextLanguage _tx_name in tx_Name_in) { if ( (_tx_name.Text = _tx_name.Text.Trim()).Length == 0 ) { errorlist_out.Add(ErrorType.tag__invalid_name); return(false); } } } #endregion return(true); }