Changeset 36211


Ignore:
Timestamp:
11/18/15 13:52:01 (7 years ago)
Author:
obi
Message:

[tithek} add first shellscript box parser for giga and add autoload for other sh parser

Location:
titan/plugins/tithek
Files:
2 added
3 edited

Legend:

Unmodified
Added
Removed
  • titan/plugins/tithek/tithek.h

    r36184 r36211  
    428428}
    429429
    430 int readtithek(const char* filename)
     430int readtithek(char* filename)
    431431{
    432432        debug(1000, "in");
    433433        FILE *fd = NULL;
    434         char *fileline = NULL;
     434        char *fileline = NULL, *file = NULL;
    435435        int linecount = 0, len = 0, pay = 0;
    436436        struct tithek* last = NULL, *tmplast = NULL;
     
    443443        }
    444444
    445         fd = fopen(filename, "r");
     445//      if(cmpfilenameext(filename, ".sh") == 0)
     446        if(ostrstr(filename, ".sh ") != NULL && ostrstr(filename, ".sh init") == NULL)
     447        {
     448                printf("[tithek] cmd: %s\n", filename);
     449                debug(10, "cmd: %s", filename);
     450                file = command(filename);
     451                file = string_newline(file);
     452                printf("[tithek] file: %s\n", file);
     453                debug(10, "file: %s", file);
     454        }
     455        else
     456                file = ostrcat(filename, NULL, 0, 0);   
     457
     458        fd = fopen(file, "r");
    446459        if(fd == NULL)
    447460        {
    448                 perr("can't open %s", filename);
     461                perr("can't open %s", file);
    449462                free(fileline);
    450463                return 1;
     
    728741
    729742//      amazon_init(titheklink, tithekfile);
     743//init locale parser
     744        localscript_init(titheklink, tithekfile);
    730745
    731746        delmarkedscreennodes(grid, 1);
  • titan/plugins/tithek/tithek_global.h

    r36202 r36211  
    618618}
    619619
     620void localscript_init(char* titheklink, char* tithekfile)
     621{
     622        char* tmpstr = NULL, *tmpstr1 = NULL, *tmpstr2 = NULL, *cmd = NULL, *line = NULL, *path = NULL;
     623
     624        if(ostrcmp("http://atemio.dyndns.tv/mediathek/mainmenu.list", titheklink) == 0)
     625        {
     626                path = createpluginpath("/tithek", 0);
     627                path = ostrcat(path, "/parser", 1, 0);
     628
     629                if(!file_exist("/mnt/parser"))
     630                        mkdir("/mnt/parser", 0777);
     631                if(!file_exist(path))
     632                        mkdir(path, 0777);
     633
     634                cmd = ostrcat("ls -1 ", path, 0, 0);
     635                cmd = ostrcat(cmd, "/*.sh", 1, 0);
     636
     637                free(path), path = NULL;
     638                tmpstr1 = command("ls -1 /mnt/parser/*.sh");
     639                tmpstr2 = command(cmd);
     640                free(cmd), cmd = NULL;
     641                tmpstr = ostrcat(tmpstr1, "\n", 0, 0);
     642                tmpstr = ostrcat(tmpstr, tmpstr2, 1, 0);
     643
     644                int count = 0, i = 0;
     645                struct splitstr* ret1 = NULL;
     646                ret1 = strsplit(tmpstr, "\n", &count);
     647       
     648                int max = count;
     649                for(i = 0; i < max; i++)
     650                {
     651                        if(file_exist(ret1[i].part) && cmpfilenameext(ret1[i].part, ".sh") == 0)
     652                        {
     653                                cmd = ostrcat(ret1[i].part, " ", 0, 0);
     654                                cmd = ostrcat(cmd, ret1[i].part, 1, 0);
     655                                cmd = ostrcat(cmd, " init", 1, 0);
     656
     657                                printf("[tithek] cmd: %s\n", cmd);
     658                                debug(10, "cmd: %s", cmd);
     659                                line = command(cmd);
     660                                printf("[tithek] add main menuentry: %s\n", line);
     661                                debug(10, "add main menuentry: %s", line);
     662                                writesys(tithekfile, line, 3);
     663                                free(cmd), cmd = NULL;
     664                                free(line), line = NULL;
     665                        }
     666                }
     667                free(ret1), ret1 = NULL;
     668                free(tmpstr), tmpstr = NULL;
     669                free(tmpstr1), tmpstr1 = NULL;
     670                free(tmpstr2), tmpstr2 = NULL;
     671        }
     672}
     673
    620674#endif
  • titan/plugins/tithek/tithek_header.h

    r36184 r36211  
    77void amazon_init(char* titheklink, char* tithekfile);
    88void amazon_deinit();
     9void localscript_init(char* titheklink, char* tithekfile);
    910
    1011void titheklog(int debuglevel, char* name1, char* name2, char* name3, char* name4, char* content)
Note: See TracChangeset for help on using the changeset viewer.