home
products
contribute
download
documentation
forum
Home
Forums
New posts
Search forums
What's new
New posts
All posts
Latest activity
Members
Registered members
Current visitors
Donate
Log in
Register
What's new
Search
Search
Search titles only
By:
New posts
Search forums
Search titles only
By:
Menu
Log in
Register
Navigation
Install the app
Install
More options
Contact us
Close Menu
Forums
MediaPortal 1
MediaPortal 1 Plugins
Why does MP only record with "Manual" as name
Contact us
RSS
JavaScript is disabled. For a better experience, please enable JavaScript in your browser before proceeding.
You are using an out of date browser. It may not display this or other websites correctly.
You should upgrade or use an
alternative browser
.
Reply to thread
Message
<blockquote data-quote="STSC" data-source="post: 15904" data-attributes="member: 10535"><p>Ok I found the issue. Is there any reason, that a program is needed to make a e.g. weekly recording?</p><p></p><p></p><p>[code] /// <summary></p><p> /// Checks whether the recording should record the specified TVProgram</p><p> /// at the specified time including the pre/post intervals</p><p> /// </summary></p><p> /// <param name="dtTime">time</param></p><p> /// <param name="TVProgram">TVProgram</param></p><p> /// <param name="iPreInterval">pre record interval</param></p><p> /// <param name="iPostInterval">post record interval</param></p><p> /// <returns>true if the recording should record</returns></p><p> /// <seealso cref="MediaPortal.TV.Database.TVProgram"/></p><p> public bool IsRecordingProgramAtTime(DateTime dtTime,TVProgram currentProgram, int iPreInterval, int iPostInterval)</p><p> {</p><p> DateTime dtStart;</p><p> DateTime dtEnd;</p><p> switch (RecType)</p><p> {</p><p> // record program just once</p><p> case RecordingType.Once:</p><p> if (dtTime >= this.StartTime.AddMinutes(-iPreInterval) && dtTime <= this.EndTime.AddMinutes(iPostInterval) ) </p><p> {</p><p> if (Canceled>0)</p><p> {</p><p> return false;</p><p> }</p><p> </p><p> if (currentProgram!=null) </p><p> {</p><p> if (currentProgram.Channel!=this.Channel) return false;</p><p> if (dtTime >= currentProgram.StartTime.AddMinutes(-iPreInterval) && dtTime <= currentProgram.EndTime.AddMinutes(iPostInterval) ) </p><p> {</p><p> return true;</p><p> }</p><p> return false;</p><p> }</p><p> string strManual=GUILocalizeStrings.Get(413);</p><p> if (this.Title.Length==0 || String.Compare(this.Title,strManual,true)==0) return true;</p><p> </p><p> strManual=GUILocalizeStrings.Get(736);</p><p> if (this.Title.Length==0 || String.Compare(this.Title,strManual,true)==0) return true;</p><p> return false;</p><p> }</p><p> break;</p><p> </p><p> // record program daily at same time & channel</p><p> case RecordingType.WeekDays:</p><p> if (currentProgram==null) return false; //we need a program</p><p> if (currentProgram.Channel==this.Channel) //check channel is correct</p><p> {</p><p> // check if program start/date time is correct</p><p> dtStart=new DateTime(dtTime.Year,dtTime.Month,dtTime.Day,currentProgram.StartTime.Hour,StartTime.Minute,0);</p><p> dtEnd =new DateTime(dtTime.Year,dtTime.Month,dtTime.Day,currentProgram.EndTime.Hour ,EndTime.Minute ,0);</p><p> if (dtStart.DayOfWeek>=DayOfWeek.Monday && dtStart.DayOfWeek<=DayOfWeek.Friday)</p><p> {</p><p> if (dtTime >= dtStart.AddMinutes(-iPreInterval) && dtTime <= dtEnd.AddMinutes(iPostInterval) ) </p><p> {</p><p> // check if recording start/date time is correct</p><p> dtStart=new DateTime(dtTime.Year,dtTime.Month,dtTime.Day,this.StartTime.Hour,StartTime.Minute,0);</p><p> dtEnd =new DateTime(dtTime.Year,dtTime.Month,dtTime.Day,this.EndTime.Hour ,EndTime.Minute ,0);</p><p> if (dtTime >= dtStart.AddMinutes(-iPreInterval) && dtTime <= dtEnd.AddMinutes(iPostInterval) ) </p><p> {</p><p> // not canceled?</p><p> if (IsSerieIsCanceled(currentProgram.StartTime))</p><p> {</p><p> return false;</p><p> }</p><p> return true;</p><p> }</p><p> }</p><p> }</p><p> }</p><p> break;</p><p></p><p> // record program daily at same time & channel</p><p> case RecordingType.Daily:</p><p> if (currentProgram==null) return false; //we need a program</p><p> if (currentProgram.Channel==this.Channel) //check channel is correct</p><p> {</p><p> // check if program start/date time is correct</p><p> dtStart=new DateTime(dtTime.Year,dtTime.Month,dtTime.Day,currentProgram.StartTime.Hour,StartTime.Minute,0);</p><p> dtEnd =new DateTime(dtTime.Year,dtTime.Month,dtTime.Day,currentProgram.EndTime.Hour ,EndTime.Minute ,0);</p><p> if (dtTime >= dtStart.AddMinutes(-iPreInterval) && dtTime <= dtEnd.AddMinutes(iPostInterval) ) </p><p> {</p><p> // check if recording start/date time is correct</p><p> dtStart=new DateTime(dtTime.Year,dtTime.Month,dtTime.Day,this.StartTime.Hour,StartTime.Minute,0);</p><p> dtEnd =new DateTime(dtTime.Year,dtTime.Month,dtTime.Day,this.EndTime.Hour ,EndTime.Minute ,0);</p><p> if (dtTime >= dtStart.AddMinutes(-iPreInterval) && dtTime <= dtEnd.AddMinutes(iPostInterval) ) </p><p> {</p><p> // not canceled?</p><p> if (IsSerieIsCanceled(currentProgram.StartTime))</p><p> {</p><p> return false;</p><p> }</p><p> return true;</p><p> }</p><p> }</p><p> }</p><p> break;</p><p> </p><p> // record program weekly at same time & channel</p><p> case RecordingType.Weekly:</p><p> if (currentProgram==null) return false; // we need a program</p><p> if (currentProgram.Channel==this.Channel) // check if channel is correct</p><p> {</p><p> // check if day of week of program matches </p><p> if (currentProgram.StartTime.DayOfWeek== dtTime.DayOfWeek)</p><p> {</p><p></p><p> // check if start/end time of program is correct</p><p> dtStart=new DateTime(dtTime.Year,dtTime.Month,dtTime.Day,currentProgram.StartTime.Hour,currentProgram.StartTime.Minute,0);</p><p> dtEnd =new DateTime(dtTime.Year,dtTime.Month,dtTime.Day,currentProgram.EndTime.Hour ,currentProgram.EndTime.Minute ,0);</p><p></p><p> if (dtTime >= dtStart.AddMinutes(-iPreInterval) && dtTime <= dtEnd.AddMinutes(iPostInterval) ) </p><p> {</p><p> </p><p> // check if day of week of recording matches </p><p> if (this.StartTime.DayOfWeek == dtTime.DayOfWeek)</p><p> {</p><p> // check if start/end time of recording is correct</p><p> dtStart=new DateTime(dtTime.Year,dtTime.Month,dtTime.Day,this.StartTime.Hour,this.StartTime.Minute,0);</p><p> dtEnd =new DateTime(dtTime.Year,dtTime.Month,dtTime.Day,this.EndTime.Hour ,this.EndTime.Minute ,0);</p><p> if (dtTime >= dtStart.AddMinutes(-iPreInterval) && dtTime <= dtEnd.AddMinutes(iPostInterval) ) </p><p> {</p><p> // not canceled?</p><p> if (IsSerieIsCanceled(currentProgram.StartTime))</p><p> {</p><p> return false;</p><p> }</p><p> return true;</p><p> }</p><p> }</p><p> }</p><p> }</p><p> }</p><p> break;</p><p> </p><p> //record program everywhere</p><p> case RecordingType.EveryTimeOnEveryChannel:</p><p> if (currentProgram==null) return false; // we need a program</p><p> if (currentProgram.Title==this.Title) // check title</p><p> {</p><p> // check program time</p><p> if (dtTime >= currentProgram.StartTime.AddMinutes(-iPreInterval) && </p><p> dtTime <= currentProgram.EndTime.AddMinutes(iPostInterval) ) </p><p> {</p><p> // not canceled?</p><p> if (IsSerieIsCanceled(currentProgram.StartTime))</p><p> {</p><p> return false;</p><p> }</p><p> return true;</p><p> }</p><p> }</p><p> break;</p><p> </p><p> //record program on this channel</p><p> case RecordingType.EveryTimeOnThisChannel:</p><p> if (currentProgram==null) return false; // we need a channel</p><p> </p><p> // check channel & title</p><p> if (currentProgram.Title==this.Title && currentProgram.Channel==this.Channel) </p><p> {</p><p> // check time</p><p> if (dtTime >= currentProgram.StartTime.AddMinutes(-iPreInterval) && </p><p> dtTime <= currentProgram.EndTime.AddMinutes(iPostInterval) ) </p><p> {</p><p></p><p> // not canceled?</p><p> if (IsSerieIsCanceled(currentProgram.StartTime))</p><p> {</p><p> return false;</p><p> }</p><p> return true;</p><p> }</p><p> }</p><p> break;</p><p> }</p><p> return false;</p><p> </p><p> }[/code]</p></blockquote><p></p>
[QUOTE="STSC, post: 15904, member: 10535"] Ok I found the issue. Is there any reason, that a program is needed to make a e.g. weekly recording? [code] /// <summary> /// Checks whether the recording should record the specified TVProgram /// at the specified time including the pre/post intervals /// </summary> /// <param name="dtTime">time</param> /// <param name="TVProgram">TVProgram</param> /// <param name="iPreInterval">pre record interval</param> /// <param name="iPostInterval">post record interval</param> /// <returns>true if the recording should record</returns> /// <seealso cref="MediaPortal.TV.Database.TVProgram"/> public bool IsRecordingProgramAtTime(DateTime dtTime,TVProgram currentProgram, int iPreInterval, int iPostInterval) { DateTime dtStart; DateTime dtEnd; switch (RecType) { // record program just once case RecordingType.Once: if (dtTime >= this.StartTime.AddMinutes(-iPreInterval) && dtTime <= this.EndTime.AddMinutes(iPostInterval) ) { if (Canceled>0) { return false; } if (currentProgram!=null) { if (currentProgram.Channel!=this.Channel) return false; if (dtTime >= currentProgram.StartTime.AddMinutes(-iPreInterval) && dtTime <= currentProgram.EndTime.AddMinutes(iPostInterval) ) { return true; } return false; } string strManual=GUILocalizeStrings.Get(413); if (this.Title.Length==0 || String.Compare(this.Title,strManual,true)==0) return true; strManual=GUILocalizeStrings.Get(736); if (this.Title.Length==0 || String.Compare(this.Title,strManual,true)==0) return true; return false; } break; // record program daily at same time & channel case RecordingType.WeekDays: if (currentProgram==null) return false; //we need a program if (currentProgram.Channel==this.Channel) //check channel is correct { // check if program start/date time is correct dtStart=new DateTime(dtTime.Year,dtTime.Month,dtTime.Day,currentProgram.StartTime.Hour,StartTime.Minute,0); dtEnd =new DateTime(dtTime.Year,dtTime.Month,dtTime.Day,currentProgram.EndTime.Hour ,EndTime.Minute ,0); if (dtStart.DayOfWeek>=DayOfWeek.Monday && dtStart.DayOfWeek<=DayOfWeek.Friday) { if (dtTime >= dtStart.AddMinutes(-iPreInterval) && dtTime <= dtEnd.AddMinutes(iPostInterval) ) { // check if recording start/date time is correct dtStart=new DateTime(dtTime.Year,dtTime.Month,dtTime.Day,this.StartTime.Hour,StartTime.Minute,0); dtEnd =new DateTime(dtTime.Year,dtTime.Month,dtTime.Day,this.EndTime.Hour ,EndTime.Minute ,0); if (dtTime >= dtStart.AddMinutes(-iPreInterval) && dtTime <= dtEnd.AddMinutes(iPostInterval) ) { // not canceled? if (IsSerieIsCanceled(currentProgram.StartTime)) { return false; } return true; } } } } break; // record program daily at same time & channel case RecordingType.Daily: if (currentProgram==null) return false; //we need a program if (currentProgram.Channel==this.Channel) //check channel is correct { // check if program start/date time is correct dtStart=new DateTime(dtTime.Year,dtTime.Month,dtTime.Day,currentProgram.StartTime.Hour,StartTime.Minute,0); dtEnd =new DateTime(dtTime.Year,dtTime.Month,dtTime.Day,currentProgram.EndTime.Hour ,EndTime.Minute ,0); if (dtTime >= dtStart.AddMinutes(-iPreInterval) && dtTime <= dtEnd.AddMinutes(iPostInterval) ) { // check if recording start/date time is correct dtStart=new DateTime(dtTime.Year,dtTime.Month,dtTime.Day,this.StartTime.Hour,StartTime.Minute,0); dtEnd =new DateTime(dtTime.Year,dtTime.Month,dtTime.Day,this.EndTime.Hour ,EndTime.Minute ,0); if (dtTime >= dtStart.AddMinutes(-iPreInterval) && dtTime <= dtEnd.AddMinutes(iPostInterval) ) { // not canceled? if (IsSerieIsCanceled(currentProgram.StartTime)) { return false; } return true; } } } break; // record program weekly at same time & channel case RecordingType.Weekly: if (currentProgram==null) return false; // we need a program if (currentProgram.Channel==this.Channel) // check if channel is correct { // check if day of week of program matches if (currentProgram.StartTime.DayOfWeek== dtTime.DayOfWeek) { // check if start/end time of program is correct dtStart=new DateTime(dtTime.Year,dtTime.Month,dtTime.Day,currentProgram.StartTime.Hour,currentProgram.StartTime.Minute,0); dtEnd =new DateTime(dtTime.Year,dtTime.Month,dtTime.Day,currentProgram.EndTime.Hour ,currentProgram.EndTime.Minute ,0); if (dtTime >= dtStart.AddMinutes(-iPreInterval) && dtTime <= dtEnd.AddMinutes(iPostInterval) ) { // check if day of week of recording matches if (this.StartTime.DayOfWeek == dtTime.DayOfWeek) { // check if start/end time of recording is correct dtStart=new DateTime(dtTime.Year,dtTime.Month,dtTime.Day,this.StartTime.Hour,this.StartTime.Minute,0); dtEnd =new DateTime(dtTime.Year,dtTime.Month,dtTime.Day,this.EndTime.Hour ,this.EndTime.Minute ,0); if (dtTime >= dtStart.AddMinutes(-iPreInterval) && dtTime <= dtEnd.AddMinutes(iPostInterval) ) { // not canceled? if (IsSerieIsCanceled(currentProgram.StartTime)) { return false; } return true; } } } } } break; //record program everywhere case RecordingType.EveryTimeOnEveryChannel: if (currentProgram==null) return false; // we need a program if (currentProgram.Title==this.Title) // check title { // check program time if (dtTime >= currentProgram.StartTime.AddMinutes(-iPreInterval) && dtTime <= currentProgram.EndTime.AddMinutes(iPostInterval) ) { // not canceled? if (IsSerieIsCanceled(currentProgram.StartTime)) { return false; } return true; } } break; //record program on this channel case RecordingType.EveryTimeOnThisChannel: if (currentProgram==null) return false; // we need a channel // check channel & title if (currentProgram.Title==this.Title && currentProgram.Channel==this.Channel) { // check time if (dtTime >= currentProgram.StartTime.AddMinutes(-iPreInterval) && dtTime <= currentProgram.EndTime.AddMinutes(iPostInterval) ) { // not canceled? if (IsSerieIsCanceled(currentProgram.StartTime)) { return false; } return true; } } break; } return false; }[/code] [/QUOTE]
Insert quotes…
Verification
Post reply
Forums
MediaPortal 1
MediaPortal 1 Plugins
Why does MP only record with "Manual" as name
Contact us
RSS
Top
Bottom