1: using System;
2: using System.Collections.Generic;
3: using System.Linq;
4: using System.Web;
5: using System.ComponentModel.DataAnnotations;
6: using System.ComponentModel.DataAnnotations.Schema;
7:
8: namespace Ia.Islamic.Cl.Model
9: {
10: ////////////////////////////////////////////////////////////////////////////
11:
12: /// <summary publish="true">
13: /// Chapter Koran Reference Network Class Library support functions: Entity model
14: /// </summary>
15: /// <value>
16: /// https://msdn.microsoft.com/en-us/library/z1hkazw7(v=vs.100).aspx
17: /// </value>
18: /// <remarks>
19: /// Copyright © 2001-2015 Jasem Y. Al-Shamlan (info@ia.com.kw), Integrated Applications - Kuwait. All Rights Reserved.
20: ///
21: /// This library is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by
22: /// the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
23: ///
24: /// This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
25: /// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
26: ///
27: /// You should have received a copy of the GNU General Public License along with this library. If not, see http://www.gnu.org/licenses.
28: ///
29: /// Copyright notice: This notice may not be removed or altered from any source distribution.
30: /// </remarks>
31: public class Chapter
32: {
33: /// <summary/>
34: public Chapter()
35: {
36: this.Verses = new List<Verse>();
37: }
38:
39: /// <summary/>
40: [Key, DatabaseGenerated(DatabaseGeneratedOption.None)]
41: public string Id { get; set; }
42:
43: /// <summary/>
44: public int Number { get; set; }
45:
46: /// <summary/>
47: public string Name { get; set; }
48:
49: /// <summary/>
50: public string ArabicName { get; set; }
51:
52: /// <summary/>
53: public bool Revealed { get; set; }
54:
55: /// <summary/>
56: public string Introduction { get; set; }
57:
58: /// <summary/>
59: public virtual Koran Koran { get; set; }
60:
61: /// <summary/>
62: public virtual ICollection<Verse> Verses { get; set; }
63:
64: [NotMapped]
65: public string NameArabicName
66: {
67: get
68: {
69: string s;
70:
71: if (!string.IsNullOrEmpty(this.Name) && !string.IsNullOrEmpty(this.ArabicName)) s = this.Name + " (" + this.ArabicName + ")";
72: else if (!string.IsNullOrEmpty(this.Name)) s = this.Name;
73: else /*if (this.ArabicName.Length > 0)*/ s = this.ArabicName;
74:
75: return s;
76: }
77: }
78: }
79:
80: ////////////////////////////////////////////////////////////////////////////
81: ////////////////////////////////////////////////////////////////////////////
82: }