= Browser Based Setup = Page to document the design and implementation of Browser Based Setup == Requirements == * Replace Existing mythtv-setup * All backend setup to be done via a web browser connection to the backend. * Enumerate and autodetect tuners/available inputs to the best of our ability. * Enumerate and present only existing network interfaces. * Simplify setup of slave backends with sanity checking of IP address setup * Do not permit a misconfigured backend. Add enough sanity checking that the resulting product is functional, even if not perfectly configured. * Present only relevant options/modulations/frequency tables to the hardware and locale in the scanner * Validate all input, require that each step is successfully completed/configured before moving on to the next. * If advanced options are to be presented at all, they should be kept in an advanced pane-- dev nodes, etc. should be invisible to the average user since they are unnecessary to anyone not overriding the information * Track reassignment of dev nodes on system restart if possible-- store a "fingerprint" of tuner information to track changes (serial number when available, PCI ID when not, vendor/name/etc. when all else fails) == Design == == Sanity Checking == === General === * For a Slave backend, do not permit the master and local server IP addresses to match. Moreover, simplify slave backend setup with a simple checkbox or by detecting existing backends and offering a simple option to add this backend to the existing setup. === Capture Card Setup === * Hide DiSEqC options for incapable devices. === Video Sources === === Channel Scanner/Input Connections === === Channel Editor/Icon Download === * Do not allow frequencies/mplexid/etc. to be edited outside of the functional range of the device. === Storage Group Setup === * Do not permit assignment of directories to a storage group if the backend user does not have permissions to read and write to them.