Ticket #4: mythweb.transcoders.diff

File mythweb.transcoders.diff, 13.5 KB (added by rtsai1111, 14 years ago)
  • mythweb/program_detail.php

     
    106106            $schedule->maxepisodes  = intval($_POST['maxepisodes']);
    107107            $schedule->startoffset  = intval($_POST['startoffset']);
    108108            $schedule->endoffset    = intval($_POST['endoffset']);
     109            $schedule->autotranscode = $_POST['autotranscode'] ? 1 : 0;
     110            $schedule->transcoder    = $_POST['transcoder'];
    109111        // Back up the program type, and save the schedule
    110112            $schedule->save($type);
    111113        }
     
    115117    // auto-commercial-flag
    116118        if (!isset($schedule->autocommflag))
    117119            $schedule->autocommflag = get_backend_setting('AutoCommercialFlag');
     120    // auto-transcode
     121        if (!isset($schedule->autotranscode))
     122            $schedule->autotranscode = get_backend_setting('AutoTranscode');
     123    // transcoder
     124        if (!isset($schedule->transcoder))
     125            $schedule->transcoder = get_backend_setting('DefaultTranscoder');
    118126    // recpriority
    119127        if (!isset($schedule->recpriority)) {
    120128            $result = mysql_query('SELECT recpriority from channel where chanid='.escape($program->chanid));
  • mythweb/schedule_manually.php

     
    7777            $schedule->search      = searchtype_manual;
    7878            $schedule->findday     = date('w',     $schedule->starttime);
    7979            $schedule->findtime    = date('H:m:s', $schedule->starttime);
     80            $schedule->autotranscode = $_POST['autotranscode'] ? 1 : 0;
     81            $schedule->transcoder  = $_POST['transcoder'];
    8082        // Figure out the title
    8183            if (strcasecmp($_POST['title'], 'use callsign') == 0) {
    8284                if (prefer_channum)
     
    115117    // auto-commercial-flag
    116118        if (!isset($schedule->autocommflag))
    117119            $schedule->autocommflag = get_backend_setting('AutoCommercialFlag');
     120    // auto-transcode
     121        if (!isset($schedule->autotranscode))
     122            $schedule->autotranscode = get_backend_setting('AutoTranscode');
     123    // transcoder
     124        if (!isset($schedule->transcoder))
     125            $schedule->transcoder = get_backend_setting('DefaultTranscoder');
    118126    // recpriority
    119127        if (!isset($schedule->recpriority)) {
    120128            $result = mysql_query('SELECT recpriority from channel where chanid='.escape($program->chanid));
  • mythweb/themes/Default/schedule_manually.php

     
    100100            <dl class="clearfix">
    101101                <dt><?php echo t('Recording Profile') ?>:</dt>
    102102                <dd><?php profile_select($schedule->profile) ?></dd>
     103                <dt><?php echo t('Transcoder') ?>:</dt>
     104                <dd><?php transcoder_select($schedule->transcoder) ?></dd>
    103105                <dt><?php echo t('Recording Group') ?>:</dt>
    104106                <dd><?php recgroup_select($schedule->recgroup) ?></dd>
    105107                <dt><?php echo t('Recording Priority') ?>:</dt>
     
    151153                   ?></select></dd>
    152154                <dt><? echo t('Auto-flag commercials') ?>:</dt>
    153155                <dd><input type="checkbox" class="radio" name="autocommflag"<?php if ($schedule->autocommflag) echo ' CHECKED' ?> value="1" /></dd>
     156                <dt><? echo t('Auto-transcode') ?>:</dt>
     157                <dd><input type="checkbox" class="radio" name="autotranscode"<?php if ($schedule->autotranscode) echo ' CHECKED' ?> value="1" /></dd>
    154158                <dt><? echo t('Auto-expire recordings') ?>:</dt>
    155159                <dd><input type="checkbox" class="radio" name="autoexpire"<?php if ($schedule->autoexpire) echo ' CHECKED' ?> value="1" /></dd>
    156160                <dt><? echo t('Record new and expire old') ?>:</dt>
  • mythweb/themes/Default/program_detail.php

     
    283283            <dl class="clearfix">
    284284                <dt><?php echo t('Recording Profile') ?>:</dt>
    285285                <dd><?php profile_select($schedule->profile) ?></dd>
     286                <dt><?php echo t('Transcoder') ?>:</dt>
     287                <dd><?php transcoder_select($schedule->transcoder) ?></dd>
    286288                <dt><?php echo t('Recording Group') ?>:</dt>
    287289                <dd><?php recgroup_select($schedule->recgroup) ?></dd>
    288290                <dt><?php echo t('Recording Priority') ?>:</dt>
     
    334336                   ?></select></dd>
    335337                <dt><? echo t('Auto-flag commercials') ?>:</dt>
    336338                <dd><input type="checkbox" class="radio" name="autocommflag"<?php if ($schedule->autocommflag) echo ' CHECKED' ?> value="1" /></dd>
     339                <dt><? echo t('Auto-transcode') ?>:</dt>
     340                <dd><input type="checkbox" class="radio" name="autotranscode"<?php if ($schedule->autotranscode) echo ' CHECKED' ?> value="1" /></dd>
    337341                <dt><? echo t('Auto-expire recordings') ?>:</dt>
    338342                <dd><input type="checkbox" class="radio" name="autoexpire"<?php if ($schedule->autoexpire) echo ' CHECKED' ?> value="1" /></dd>
    339343                <dt><? echo t('Record new and expire old') ?>:</dt>
  • mythweb/themes/Default/recording_schedules.php

     
    3535    <td><?php echo get_sort_link('title',    t('title'))    ?></td>
    3636    <td><?php echo get_sort_link(prefer_channum ? 'channum' : 'callsign',  t('channel')) ?></td>
    3737    <td><?php echo get_sort_link('profile',  t('profile'))  ?></td>
     38    <td><?php echo get_sort_link('transcoder',  t('transcoder'))  ?></td>
    3839    <td><?php echo get_sort_link('recgroup', t('recgroup')) ?></td>
    3940    <td><?php echo get_sort_link('type',     t('type'))     ?></td>
    4041</tr><?php
     
    118119            echo $schedule->channel->name;
    119120        ?></td>
    120121    <td nowrap><?php echo _or($schedule->profile,  '&nbsp;') ?></td>
     122    <td nowrap>
     123        <?php
     124        global $Transcoders;
     125        echo _or($Transcoders[$schedule->transcoder],  '&nbsp;')
     126        ?>
     127    </td>
    121128    <td nowrap><?php echo _or($schedule->recgroup, '&nbsp;') ?></td>
    122129    <td nowrap><?php echo $schedule->texttype ?></td>
    123130</tr><?php
  • mythweb/includes/recording_schedules.php

     
    7676        }
    7777    }
    7878
     79// Transcoder names
     80    global $Transcoders;
     81    $Transcoders = array();
     82    $Transcoders[0] = 'Autodetect';
     83    $result = mysql_query('SELECT r.id,r.name'
     84                    .' FROM recordingprofiles r,profilegroups p'
     85                    .' WHERE cardtype = "TRANSCODE"'
     86                    .'   AND r.profilegroup = p.id')
     87            or trigger_error('SQL Error: '.mysql_error(), FATAL);
     88    while ($row = mysql_fetch_assoc($result)) {
     89        if ($row['name'] != "RTjpeg/MPEG4" && $row['name'] != "MPEG2") {
     90            $Transcoders[$row['id']] = $row['name'];
     91        }
     92    }
     93    mysql_free_result($result);
     94
    7995//
    8096//  Recording Schedule class
    8197//
     
    114130    var $findday;
    115131    var $findtime;
    116132    var $findid;
     133    var $transcoder;
    117134
    118135    var $texttype;
    119136    var $channel;
     
    162179    // Add a generic "will record" variable, too
    163180        $this->will_record = ($this->type && $this->type != rectype_dontrec) ? true : false;
    164181
    165     // Turn type int a word
     182    // Turn type into a word
    166183        $this->texttype = $GLOBALS['RecTypes'][$this->type];
    167184
    168185    // Do we have a chanid?  Load some info about it
     
    203220    // Update the type, in case it changed
    204221        $this->type = $new_type;
    205222    // Update the record
    206         $result = mysql_query('REPLACE INTO record (recordid,type,chanid,starttime,startdate,endtime,enddate,search,title,subtitle,description,profile,recpriority,category,maxnewest,inactive,maxepisodes,autoexpire,startoffset,endoffset,recgroup,dupmethod,dupin,station,seriesid,programid,autocommflag,findday,findtime,findid) values ('
     223        $result = mysql_query('REPLACE INTO record (recordid,type,chanid,starttime,startdate,endtime,enddate,search,title,subtitle,description,profile,recpriority,category,maxnewest,inactive,maxepisodes,autoexpire,startoffset,endoffset,recgroup,dupmethod,dupin,station,seriesid,programid,autocommflag,findday,findtime,findid,autotranscode,transcoder) values ('
    207224                                .escape($this->recordid, true)             .','
    208225                                .escape($this->type)                       .','
    209226                                .escape($this->chanid)                     .','
     
    233250                                .escape($this->autocommflag)               .','
    234251                                .escape($this->findday)                    .','
    235252                                .escape($this->findtime)                   .','
    236                                 .escape($this->findid)                     .')')
     253                                .escape($this->findid)                     .','
     254                                .escape($this->autotranscode)              .','
     255                                .escape($this->transcoder)                 .')')
    237256            or trigger_error('SQL Error: '.mysql_error(), FATAL);
    238257    // Get the id that was returned
    239258        $recordid = mysql_insert_id();
     
    364383                   ."\t<dd>".htmlentities($this->profile, ENT_COMPAT, 'UTF-8')
    365384                            ."</dd>\n";
    366385        }
     386    // Transcoder
     387        if (preg_match('/\\S/', $this->transcoder)) {
     388            $str .= "\t<dt>".t('Transcoder').":</dt>\n"
     389                   ."\t<dd>".htmlentities($this->transcoder, ENT_COMPAT, 'UTF-8')
     390                            ."</dd>\n";
     391        }
    367392    // Recording Group
    368393        if (!empty($this->recgroup)) {
    369394            $str .= "\t<dt>".t('Recording Group').":</dt>\n"
     
    393418    }
    394419
    395420/*
     421    transcoder_select:
     422    prints a <select> of the various transcoders to choose from
     423*/
     424    function transcoder_select($this_transcoder, $name='transcoder') {
     425        global $Transcoders;
     426        echo "<select name=\"$name\">";
     427        foreach ($Transcoders as $transcoderid => $transcoder) {
     428            echo '<option value="'.htmlentities($transcoderid).'"';
     429            if ($this_transcoder == $transcoderid) {
     430                echo ' SELECTED';
     431            }
     432            echo '>'.htmlentities($transcoder).'</option>';
     433        }
     434        echo '</select>';
     435    }
     436
     437/*
    396438    recgroup_select:
    397439    prints a <select> of the various recgroups available
    398440*/
  • mythweb/includes/sorting.php

     
    180180        return ($a->profile > $b->profile) ? 1 : -1;
    181181    }
    182182
     183    function by_transcoder(&$a, &$b) {
     184        if ($a->transcoder == $b->transcoder) return 0;
     185        return ($a->transcoder > $b->transcoder) ? 1 : -1;
     186    }
    183187
    184188?>
  • mythweb/languages/English.php

     
    1717// Shared Terms
    1818    '$1 min'                                             => '',
    1919    '$1 mins'                                            => '',
    20     '$1 programs, using $2 ($3) out of $4.'              => '',
     20    '$1 programs, using $2 ($3) out of $4 ($5 free).'    => '',
    2121    '$1 to $2'                                           => '',
    2222    'Advanced Options'                                   => '',
    2323    'Airtime'                                            => '',
    2424    'All recordings'                                     => '',
    2525    'Auto-expire recordings'                             => '',
    2626    'Auto-flag commercials'                              => '',
     27    'Auto-transcode'                                     => '',
    2728    'Backend Status'                                     => '',
    2829    'Cancel this schedule.'                              => '',
    2930    'Category'                                           => '',
     
    7172    'Subtitle and Description'                           => '',
    7273    'The requested recording schedule has been deleted.' => '',
    7374    'Title'                                              => '',
     75    'Transcoder'                                         => '',
    7476    'Unknown'                                            => '',
    7577    'Update Recording Settings'                          => '',
    7678    'Yes'                                                => '',
     
    196198    'No recording schedules have been defined.' => '',
    197199    'channel'                                   => '',
    198200    'profile'                                   => '',
     201    'transcoder'                                => '',
    199202    'type'                                      => '',
    200203// themes/.../schedule_manually.php
    201204    'Save Schedule' => '',