• Recent
  • Tags
  • Popular
  • Home
  • Docs
  • Register
  • Login
RetroPie forum home
  • Recent
  • Tags
  • Popular
  • Home
  • Docs
  • Register
  • Login

WebtroPie

Scheduled Pinned Locked Moved Projects and Themes
retropieweb interfacewebtropie
157 Posts 27 Posters 62.3k Views
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • D
    darknior @kixut
    last edited by darknior 11 Dec 2017, 01:55 12 Nov 2017, 01:54

    @kixut Thanks for all these improvement <3

    Now my feedback and error tracking :

    fix for the utf8 issue

    That's ok

    fix for the medias directory issue

    0_1510447476593_Sans titre-1.jpg

    • Like you can see i have them when i edit a game.
      You put them like background-image, it is enough to see i have an image, but it is behind the drag n drop zone :(
      And i cant use any script to zoom it and see if it is a good quality image or not ?
      Maybe you can make the zone smaller ant put the image at left or right ?
      And in the future, just an idée, not to make now, maybe angular or PHP can give the size of the image to write it ?

    • There is an z-index bug with the Title FAVORITE that is in front of the edit popup, and i can't modify the informations.

    • I don't see any image in the list. I suspect it don't try to take them ... i don't see them on the network status.
      It can really help to work to see images and videos in the list.

    • You let the INPUT in RED, but you found the image?

    0_1510448319895_Sans titre-2.jpg

    But this screenshot show us an other problem : Duplicates in a repeater are not allowed
    It's cool i remove a duplicate entry in my PSX XML lol ... but other users will not understand if they not debug.
    Maybe you can take the last entry to CRUSH the first ? It's the easy way, or SKIP the new duplicate entry.

    removed (curly) [square] bracket text after games lists (I originally decided to show that data as it is a metadata editor and maybe useful to some)

    You are right, they are very important to show the game name exactly like on PI. To see and correct bad naming errors.
    They only remove and replace them in MULTI system systems: FAVORITES, LAST PLAYED, ALL GAMES.
    To save place to write where come from the game, if not we can't know it.

    added (system) to auto game lists

    Not understand what you want to say ?

    changed players input from number to text

    Ok i see the new TEXT INPUT but now every where it only write me : 1

    made description only multiline text field

    Not really understand too, multiline text field is the best, what do use before ?

    For the issues regarding systems not showing

    Always there ... and game counts is now fall at 452 games available :( :( :(

    • NO XML in my /home/pi/RetroPie/roms
    • There are all there : ~/.emulationstation/gamelists

    http://www.mediafire.com/file/hzmd20bmh82lmc8/es_gamelists.tgz
    http://www.mediafire.com/file/p9kvgpqdq92vnys/es_systems.cfg

    And if can help the Alpha version of our theme : dark-steel--alpha.zip

    Life is game, just play it !

    K 1 Reply Last reply 12 Nov 2017, 11:30 Reply Quote 0
    • K
      kixut @darknior
      last edited by kixut 11 Dec 2017, 12:09 12 Nov 2017, 11:30

      @darknior sorry about that, I've made some small tweaks so that the images show better now and if you mouse over the image in the editor it will show the image size. I will have a look at the other issues later. Thanks again

      Edit: Oh, and the z-index bug, you will need to refresh your cache to pick up the style sheet changes - in Chrome - F12, then Right click Refresh then choose the last option.
      I've removed the track by on the game list, it allows angular to be more efficient but isn't necessary and depends on the path each game being unique.
      I've also changed the game list to only strip brackets on auto collections

      1 Reply Last reply Reply Quote 0
      • D
        darknior
        last edited by 12 Nov 2017, 18:13

        I have update and now black screen :p

        angular.js:14642 TypeError: Cannot set property 'auto-allgames' of undefined
        at onSuccess (config.service.js:54)
        at processQueue (angular.js:17000)
        at angular.js:17044
        at Scope.$digest (angular.js:18182)
        at Scope.$apply (angular.js:18480)
        at done (angular.js:12501)
        at completeRequest (angular.js:12727)
        at XMLHttpRequest.requestLoaded (angular.js:12655) "Possibly unhandled rejection: {}"

        Life is game, just play it !

        K 1 Reply Last reply 12 Nov 2017, 22:44 Reply Quote 0
        • K
          kixut @darknior
          last edited by kixut 11 Dec 2017, 23:17 12 Nov 2017, 22:44

          @darknior please git pull, hard refresh as above

          Edit: Regarding the game counts I set my system up with your game counts and the latest version matches all of the game counts except for PSX which contains 27 duplicates, so, WebtroPie was showing more games than EmulationStation.
          I've written something which finds the duplicates and shows them on the console.

          Edit 2: just tried your theme, looking great! - except I see what you mean about meta positioning
          0_1510528555623_DarkSteele.png

          D 1 Reply Last reply 13 Nov 2017, 14:13 Reply Quote 0
          • D
            darknior @kixut
            last edited by 13 Nov 2017, 14:13

            @kixut I have read your Install script and i see now you use app/#!/ and not ROM in URL, ok it's better.

            The source are Ok and i have install again.

            # git pull
            Already up-to-date.
            

            I have refresh like you write, but i also have a good CHROME PLUGIN to do it from years ;)
            I have try on IE same result.

            Now i see your script in console, i have 0 games and 0 duplicate. I can see nothing. Zero menu now :(
            On the PI all is working perfectly.

            • Config.php works fine :
            {"app":{"LoadAllSystems":false,"ScanAtStartup":false,"ShowEmptySystems":false,"ShowEmptyDirectories":false,"ShowAddFields":true,"ShowGameCounts":true,"ShowThemeSelect":true,"ShowViewSelect":true,"LogSystemTotals":true,"ThemeSet":"carbon","Language":"en","DateFormat":"DD\/MM\/YYYY","ViewTransitions":"Slide","ViewStyle":""},"env":{"has_gd":1,"has_launch":1,"read_only":0},"lang":{"md_labels":{"name":"Name","rating":"Rating","releasedate":"Released","developer":"Developer","publisher":"Publisher","genre":"Genre","players":"Players","lastplayed":"Last Played","playcount":"Times Played","human_size":"Size","image":"Image","marquee":"Marquee","video":"Video","year":"Year","hidden":"Hidden","kidgame":"Kid","favorite":"Favourite","stars":"Stars","description":"Description"},"buttons":{"launch":"Launch","scrape":"Scrape","save":"Save","cancel":"Cancel","reset":"Reset","delete":"Delete","move":"Move","options":"Options","menu":"Menu","search":"Search","back":"Back","system":"system","choose":"choose","edit":"Edit","open":"Open","select":"Select"},"languages":{"en":"English (UK)","en-us":"English (US)"}},"es":{"BackgroundJoystickInput":false,"CaptionsCompatibility":true,"DrawFramerate":false,"EnableSounds":true,"MoveCarousel":true,"ParseGamelistOnly":false,"QuickSystemSelect":true,"SaveGamelistsOnExit":false,"ScrapeRatings":true,"ScreenSaverControls":true,"ScreenSaverOmxPlayer":true,"ShowHelpPrompts":true,"ShowHiddenFiles":false,"SlideshowScreenSaverCustomImageSource":false,"SlideshowScreenSaverRecurse":false,"SlideshowScreenSaverStretch":false,"SortAllSystems":false,"StretchVideoOnScreenSaver":false,"UseCustomCollectionsSystem":true,"VideoAudio":true,"VideoOmxPlayer":true,"hideQuitMenuOnKidUI":false,"MaxVRAM":"100","ScraperResizeHeight":"0","ScraperResizeWidth":"400","ScreenSaverSwapImageTimeout":"5000","ScreenSaverSwapVideoTimeout":"35000","ScreenSaverTime":"300000","AudioDevice":"PCM","CollectionSystemsAuto":"all,favorites,recent","CollectionSystemsCustom":"","GamelistViewStyle":"automatic","Local":"fr_FR.UTF-8","OMXAudioDev":"both","PowerSaverMode":"default","Scraper":"TheGamesDB","ScreenSaverBehavior":"random video","ScreenSaverGameInfo":"always","SlideshowScreenSaverBackgroundAudioFile":"\/home\/pi\/.emulationstation\/slideshow\/audio\/slideshow_bg.wav","SlideshowScreenSaverImageDir":"\/home\/pi\/.emulationstation\/slideshow\/image","SlideshowScreenSaverImageFilter":".png,.jpg","StartupSystem":"","ThemeSet":"dark-steel","TransitionStyle":"fade","UIMode":"Full","UIMode_passkey":"uuddlrlrba"},"themes":{"stretch-carbon":true,"stretch-clean-look":true,"stretch-crt":true,"stretch-cygnus":true,"stretch-material":true,"stretch-tronkyfran":true},"systems":[],"themes_list":[{"name":"famicom-mini"},{"name":"carbon"},{"name":"pixel"},{"name":"ComicBook"},{"name":"workbench"},{"name":"snes-mini"},{"name":"art-book"},{"name":"dark-steel"},{"name":"ComicBook_SE-Wheelart"},{"name":"nes-mini"},{"name":"material"},{"name":"mini-psx"}]}
            
            • theme.php works fine too.

            • gamelist.php
              http://192.168.1.62/app/svr/gamelist.php?getlist=1&system=default
              Satus 200 ok but no valid response from the PI.

            HTTP/1.1 200 OK
            Date: Mon, 13 Nov 2017 13:55:16 GMT
            Server: Apache/2.4.10 (Raspbian)
            Content-Length: 0
            Keep-Alive: timeout=5, max=95
            Connection: Keep-Alive
            Content-Type: text/html; charset=UTF-8
            

            Tell me what i can try to help please.

            Life is game, just play it !

            K 1 Reply Last reply 13 Nov 2017, 18:58 Reply Quote 0
            • K
              kixut @darknior
              last edited by 13 Nov 2017, 18:58

              @darknior yes I did change the link but since the old symlink would still be there it would still work.

              Thanks for the info your config is not returning any systems, which is my fault as a while ago I had commented out a little code that is still needed regarding where it looks for gamelists, sorry about that, please try a new pull.

              1 Reply Last reply Reply Quote 0
              • D
                darknior
                last edited by 13 Nov 2017, 20:30

                @kixut said in WebtroPie WIP:

                I had commented out a little code that is still needed regarding where it looks for gamelists

                I have make the GIT PULL and see you update the app/svr/config.php file.

                HTTP/1.1 200 OK
                Date: Mon, 13 Nov 2017 20:23:04 GMT
                Server: Apache/2.4.10 (Raspbian)
                Content-Length: 0
                Keep-Alive: timeout=5, max=90
                Connection: Keep-Alive
                Content-Type: text/html; charset=UTF-8
                

                And always same, it found nothing, no gamelist ?

                + file_exists(ROMSPATH.'/'.$system_name."/gamelist.xml") ||
                + file_exists(HOME_ES."/gamelists/".$system_name."/gamelist.xml") ||
                + file_exists(ES_PATH."/gamelists/".$system_name."/gamelist.xml")

                And it's good, i don't understand :(

                /opt/retropie/configs/all/emulationstation/gamelists

                Life is game, just play it !

                K 1 Reply Last reply 14 Nov 2017, 00:02 Reply Quote 0
                • K
                  kixut @darknior
                  last edited by kixut 14 Nov 2017, 00:02

                  @darknior Thanks for your patience, it's a challenge to debug in this situation, I've tried to replicate what you describe as best I can and noticed that it doesn't behave nicely if the roms directories do not exist but should do now, so I've pushed this and a few other minor changes.

                  1 Reply Last reply Reply Quote 1
                  • D
                    darknior
                    last edited by darknior 14 Nov 2017, 00:47

                    @kixut said in WebtroPie WIP:

                    Thanks for your patience, it's a challenge to debug in this situation

                    It's me, i'am so sad because i can't really help you more :(
                    I have see all your updates, 12 files. make the force refresh and again nothing :(
                    And now nothing in the console. It not search gamelist with PHP, only Config n Theme.

                    Maybe you can explain me how to debug for you ? In what file i must search to found why it not load my gamelist files.
                    Because now the real problem was it not load lists.

                    angular.js:14642 TypeError: Cannot read property 'substring' of undefined
                    at service.getGamelist (game.service.js:197)
                    at system.view.js:101
                    at processQueue (angular.js:17000)
                    at angular.js:17044
                    at Scope.$digest (angular.js:18182)
                    at Scope.$apply (angular.js:18480)
                    at done (angular.js:12501)
                    at completeRequest (angular.js:12727)
                    at XMLHttpRequest.requestLoaded (angular.js:12655) "Possibly unhandled rejection: {}"

                    Yes some systemes can be installed like SATURN but without any games, ES is not loading a system if his rom dir is empty.

                    Life is game, just play it !

                    1 Reply Last reply Reply Quote 0
                    • D
                      darknior
                      last edited by 14 Nov 2017, 01:01

                              // get either a specific gamelist for a system or all systems
                              function getGamelist(system_name)
                              {
                                  var promise;
                      			console.log(system_name);
                                  if (system_name.substring(0,4)=='auto' //||
                                       //system.name.substring(0,6)=='custom'
                                      )      // get all systems
                                  {
                      
                      

                      I don't know why it append, i have console.log and it crash when the system_name is undefined

                      Life is game, just play it !

                      K 1 Reply Last reply 14 Nov 2017, 01:20 Reply Quote 0
                      • D
                        darknior
                        last edited by 14 Nov 2017, 01:15

                        I see you comit a debug for console.log, it write me :

                        config.service.js:47 systems
                        config.service.js:48 []auto-allgames: {name: "auto-allgames", fullname: "all", theme: "auto-allgames", has_games: true}auto-favorites: {name: "auto-favorites", fullname: "favorites", theme: "auto-favorites", has_games: true}auto-lastplayed: {name: "auto-lastplayed", fullname: "recent", theme: "auto-lastplayed", has_games: true}length: 0__proto__: Array(0)
                        system.view.js:95 {name: "carbon", path: "svr/themes/carbon", has_gd: 1, includes: {…}, fonts: {…}, …}carousel_systems: {}carousel_systems_list: []fonts: {carbon_._art_Cabin_Bold: {…}, carbon__art_Cabin_Bold: {…}}has_gd: 1includes: {././carbon.xml: {…}, auto-allgames/../carbon.xml: {…}, auto-favorites/../carbon.xml: {…}, auto-lastplayed/../carbon.xml: {…}, custom-collections/../carbon.xml: {…}}mid_index: 0name: "carbon"path: "svr/themes/carbon"systems: {default: {…}, auto-allgames: {…}, auto-favorites: {…}, auto-lastplayed: {…}, custom-collections: {…}}__proto__: Object
                        angular.js:14642 TypeError: Cannot read property 'substring' of undefined
                            at service.getGamelist (game.service.js:197)
                            at system.view.js:101
                            at processQueue (angular.js:17000)
                            at angular.js:17044
                            at Scope.$digest (angular.js:18182)
                            at Scope.$apply (angular.js:18480)
                            at done (angular.js:12501)
                            at completeRequest (angular.js:12727)
                            at XMLHttpRequest.requestLoaded (angular.js:12655) "Possibly unhandled rejection: {}"
                        (anonymous) @ angular.js:14642
                        (anonymous) @ angular.js:11102
                        processChecks @ angular.js:17026
                        $digest @ angular.js:18182
                        $apply @ angular.js:18480
                        done @ angular.js:12501
                        completeRequest @ angular.js:12727
                        requestLoaded @ angular.js:12655
                        XMLHttpRequest.send (async)
                        (anonymous) @ angular.js:12701
                        sendReq @ angular.js:12446
                        serverRequest @ angular.js:12198
                        processQueue @ angular.js:17000
                        (anonymous) @ angular.js:17044
                        $digest @ angular.js:18182
                        $apply @ angular.js:18480
                        done @ angular.js:12501
                        completeRequest @ angular.js:12727
                        requestLoaded @ angular.js:12655
                        XMLHttpRequest.send (async)
                        (anonymous) @ angular.js:12701
                        sendReq @ angular.js:12446
                        serverRequest @ angular.js:12198
                        processQueue @ angular.js:17000
                        (anonymous) @ angular.js:17044
                        $digest @ angular.js:18182
                        $apply @ angular.js:18480
                        bootstrapApply @ angular.js:1952
                        invoke @ angular.js:5040
                        doBootstrap @ angular.js:1950
                        bootstrap @ angular.js:1970
                        angularInit @ angular.js:1855
                        (anonymous) @ angular.js:33826
                        trigger @ angular.js:3468
                        
                        

                        Life is game, just play it !

                        1 Reply Last reply Reply Quote 0
                        • K
                          kixut @darknior
                          last edited by kixut 14 Nov 2017, 01:20

                          @darknior I think that the problem is that the config.php although it returns all of the other config it is not returning the list of active systems, (my guess)

                          so, if you want to have a little dabble with that php script (browse 192.168.1.31/app/svr/config.php?get=255 ) you could debug that loop in a browser and work out why below is not evaluating to true, ... maybe echo those values ?

                          file_exists(ROMSPATH.'/'.$system_name."/gamelist.xml") ||
                          + file_exists(HOME_ES."/gamelists/".$system_name."/gamelist.xml") ||
                          + file_exists(ES_PATH."/gamelists/".$system_name."/gamelist.xml")

                          I've added a console.log to list systems, I'm guessing they will be blank
                          The other logging is more for later with your game counts, I believe when you are back working again that the counts should be better, and will show duplicates in your psx game list, I made that a config option as it seemed a little slower with it switched on.

                          Edit: ok my guess wrong, ... oh I mean no I was right, yes you should have more than auto systems so please, if you could evaluate the php file_exists check for which gamelists exist. thanks

                          Oh, and of course I should add checks and nice message for if there really are no systems :)

                          ... could it be that for some reason there is a permission problem now reading if the file exists?

                          1 Reply Last reply Reply Quote 0
                          • D
                            darknior
                            last edited by 14 Nov 2017, 01:30

                            System is empty

                            Toggle Collapsed | use cfdump format: 
                            Query:
                             - JSONQuery
                            {
                            -app: {
                            LoadAllSystems: false
                            ScanAtStartup: false
                            ShowEmptySystems: false
                            ShowEmptyDirectories: false
                            ShowAddFields: true
                            ShowGameCounts: true
                            ShowThemeSelect: true
                            ShowViewSelect: true
                            LogSystemTotals: false
                            ThemeSet: "carbon"
                            Language: "en"
                            DateFormat: "DD/MM/YYYY"
                            ViewTransitions: "Slide"
                            ViewStyle: ""
                            }
                            -env: {
                            has_gd: 1
                            has_launch: 1
                            read_only: 0
                            }
                            -lang: {
                            -md_labels: {
                            name: "Name"
                            rating: "Rating"
                            releasedate: "Released"
                            developer: "Developer"
                            publisher: "Publisher"
                            genre: "Genre"
                            players: "Players"
                            lastplayed: "Last Played"
                            playcount: "Times Played"
                            human_size: "Size"
                            image: "Image"
                            marquee: "Marquee"
                            video: "Video"
                            year: "Year"
                            hidden: "Hidden"
                            kidgame: "Kid"
                            favorite: "Favourite"
                            stars: "Stars"
                            description: "Description"
                            }
                            -buttons: {
                            launch: "Launch"
                            scrape: "Scrape"
                            save: "Save"
                            cancel: "Cancel"
                            reset: "Reset"
                            delete: "Delete"
                            move: "Move"
                            options: "Options"
                            menu: "Menu"
                            search: "Search"
                            back: "Back"
                            system: "system"
                            choose: "choose"
                            edit: "Edit"
                            open: "Open"
                            select: "Select"
                            }
                            -languages: {
                            en: "English (UK)"
                            en-us: "English (US)"
                            }
                            }
                            -es: {
                            BackgroundJoystickInput: false
                            CaptionsCompatibility: true
                            DrawFramerate: false
                            EnableSounds: true
                            MoveCarousel: true
                            ParseGamelistOnly: false
                            QuickSystemSelect: true
                            SaveGamelistsOnExit: false
                            ScrapeRatings: true
                            ScreenSaverControls: true
                            ScreenSaverOmxPlayer: true
                            ShowHelpPrompts: true
                            ShowHiddenFiles: false
                            SlideshowScreenSaverCustomImageSource: false
                            SlideshowScreenSaverRecurse: false
                            SlideshowScreenSaverStretch: false
                            SortAllSystems: false
                            StretchVideoOnScreenSaver: false
                            UseCustomCollectionsSystem: true
                            VideoAudio: true
                            VideoOmxPlayer: true
                            hideQuitMenuOnKidUI: false
                            MaxVRAM: "100"
                            ScraperResizeHeight: "0"
                            ScraperResizeWidth: "400"
                            ScreenSaverSwapImageTimeout: "5000"
                            ScreenSaverSwapVideoTimeout: "35000"
                            ScreenSaverTime: "300000"
                            AudioDevice: "PCM"
                            CollectionSystemsAuto: "all,favorites,recent"
                            CollectionSystemsCustom: ""
                            GamelistViewStyle: "automatic"
                            Local: "fr_FR.UTF-8"
                            OMXAudioDev: "both"
                            PowerSaverMode: "default"
                            Scraper: "TheGamesDB"
                            ScreenSaverBehavior: "random video"
                            ScreenSaverGameInfo: "always"
                            SlideshowScreenSaverBackgroundAudioFile: "/home/pi/.emulationstation/slideshow/audio/slideshow_bg.wav"
                            SlideshowScreenSaverImageDir: "/home/pi/.emulationstation/slideshow/image"
                            SlideshowScreenSaverImageFilter: ".png,.jpg"
                            StartupSystem: ""
                            ThemeSet: "dark-steel"
                            TransitionStyle: "fade"
                            UIMode: "Full"
                            UIMode_passkey: "uuddlrlrba"
                            }
                            -themes: {
                            stretch-carbon: true
                            stretch-clean-look: true
                            stretch-crt: true
                            stretch-cygnus: true
                            stretch-material: true
                            stretch-tronkyfran: true
                            }
                            systems: [ ]
                            -themes_list: [
                            -{
                            name: "famicom-mini"
                            }
                            -{
                            name: "carbon"
                            }
                            -{
                            name: "pixel"
                            }
                            -{
                            name: "ComicBook"
                            }
                            -{
                            name: "workbench"
                            }
                            -{
                            name: "snes-mini"
                            }
                            -{
                            name: "art-book"
                            }
                            -{
                            name: "dark-steel"
                            }
                            -{
                            name: "ComicBook_SE-Wheelart"
                            }
                            -{
                            name: "nes-mini"
                            }
                            -{
                            name: "material"
                            }
                            -{
                            name: "mini-psx"
                            }
                            ]
                            }
                            
                            

                            Life is game, just play it !

                            K 1 Reply Last reply 14 Nov 2017, 01:35 Reply Quote 0
                            • K
                              kixut @darknior
                              last edited by 14 Nov 2017, 01:35

                              @darknior thanks, I think it's going to turn out to be a permissions problem, does your web server run as a user that can read the gamelists files ?

                              D 1 Reply Last reply 14 Nov 2017, 01:40 Reply Quote 0
                              • D
                                darknior @kixut
                                last edited by darknior 14 Nov 2017, 01:40

                                @kixut It's work before ... i don't know. I supose Apache use root user, how can i verify this ? i use you script copy from here.

                                And i install your script i think at good place in : /opt/retropie/supplementary/WebtroPie/ with root user

                                Life is game, just play it !

                                K 1 Reply Last reply 14 Nov 2017, 01:58 Reply Quote 0
                                • D
                                  darknior
                                  last edited by darknior 14 Nov 2017, 01:47

                                  if ($_GET['get'] & SYSTEMS)
                                  {
                                  echo($_GET['get']);
                                  echo(SYSTEMS);

                                  result :

                                  • 25532
                                  • ... systems":[]," ....

                                  It is strange because your application is installed by part as ROOT and some other files PI
                                  I always have execute it with root user for installation, maybe it's bad ?
                                  But /opt/retropie/supplementary/ is a user root directory.

                                  Life is game, just play it !

                                  1 Reply Last reply Reply Quote 0
                                  • K
                                    kixut @darknior
                                    last edited by kixut 14 Nov 2017, 01:58

                                    @darknior it should work from anywhere, there is no hard coded path to where it's installed.
                                    I would just open a tab to http://192.168.1.31/app/svr/config.php?get=255 and edit the config.php and temporarily add some echo commands (see below), then refresh your tab, the list of systems should be every system from your es_systems.cfg, and the ones that have a true file_exists are the ones that go back to the client, if the path look right and the ones that you know exist say that they don't exist then it would be permissions, but maybe it's not getting the list from es_systems, or maybe there something wrong with the paths

                                        echo "<pre>\n";
                                        print_r($systems['system']);
                                        echo "</pre>";
                                    
                                        for($i=0; $i<count($systems['system']);$i++)
                                        {
                                    
                                            $system_name = $systems['system'][$i]['name'];
                                    
                                            echo "<pre>\n";
                                            echo $system_name."\n";
                                            echo "[".$systems['system'][$i]['path']."/gamelist.xml"."]";
                                            echo file_exists($systems['system'][$i]['path']."/gamelist.xml")."\n";
                                            echo "[".ROMSPATH.'/'.$system_name."/gamelist.xml"."]";
                                            echo file_exists(ROMSPATH.'/'.$system_name."/gamelist.xml")."\n";
                                            echo "[".HOME_ES."/gamelists/".$system_name."/gamelist.xml"."]";
                                            echo file_exists(HOME_ES."/gamelists/".$system_name."/gamelist.xml")."\n";
                                            echo "[".ES_PATH."/gamelists/".$system_name."/gamelist.xml"."]";
                                            echo file_exists(ES_PATH."/gamelists/".$system_name."/gamelist.xml")."\n";
                                            echo "</pre>";
                                    
                                            if (file_exists($systems['system'][$i]['path']."/gamelist.xml") ||
                                                file_exists(ROMSPATH.'/'.$system_name."/gamelist.xml") ||
                                                file_exists(HOME_ES."/gamelists/".$system_name."/gamelist.xml") ||
                                                file_exists(ES_PATH."/gamelists/".$system_name."/gamelist.xml")
                                                )
                                            {
                                                $systems['system'][$i]['has_gamelist'] = true;
                                                if (filesize($systems['system'][$i]['path']."/gamelist.xml") > 40 ||
                                                    filesize(ROMSPATH.'/'.$system_name."/gamelist.xml") > 40 ||
                                                    filesize(HOME_ES."/gamelists/".$system_name."/gamelist.xml") > 40 ||
                                                    filesize(ES_PATH."/gamelists/".$system_name."/gamelist.xml") > 40
                                                    )
                                                    $systems['system'][$i]['has_games'] = true;
                                            }
                                           $config['systems'][$system_name] = $systems['system'][$i];
                                        }
                                    exit; // this is all we're interested in at the moment
                                    

                                    ... never mind ... lets add another last one "/opt/retropie/configs/all/emulationstation/"

                                    Edit: Ive added /opt/retropie/configs/all/emulationstation and pushed, I feel dumb now

                                    1 Reply Last reply Reply Quote 0
                                    • D
                                      darknior
                                      last edited by 14 Nov 2017, 02:11

                                      If i understand fine :

                                      if ($_GET['get'] & SYSTEMS)
                                      {
                                          $array_types = array('system'=>true);
                                          if (file_exists(HOME_ES."/es_systems.cfg"))
                                              $systems = load_file_xml_as_array(HOME_ES."/es_systems.cfg");
                                          else
                                              $systems = load_file_xml_as_array(ES_PATH."/es_systems.cfg");
                                          $config['systems'] = array();
                                      
                                          echo "<pre>\n";
                                          print_r($systems['system']);
                                          echo "</pre>";
                                      
                                          for($i=0; $i<count($systems['system']);$i++)
                                          {
                                      
                                              $system_name = $systems['system'][$i]['name'];
                                      
                                              echo "<pre>\n";
                                              echo $system_name."\n";
                                              echo "[".$systems['system'][$i]['path']."/gamelist.xml"."]";
                                              echo file_exists($systems['system'][$i]['path']."/gamelist.xml")."\n";
                                              echo "[".ROMSPATH.'/'.$system_name."/gamelist.xml"."]";
                                              echo file_exists(ROMSPATH.'/'.$system_name."/gamelist.xml")."\n";
                                              echo "[".HOME_ES."/gamelists/".$system_name."/gamelist.xml"."]";
                                              echo file_exists(HOME_ES."/gamelists/".$system_name."/gamelist.xml")."\n";
                                              echo "[".ES_PATH."/gamelists/".$system_name."/gamelist.xml"."]";
                                              echo file_exists(ES_PATH."/gamelists/".$system_name."/gamelist.xml")."\n";
                                              echo "</pre>";
                                      
                                              if (file_exists($systems['system'][$i]['path']."/gamelist.xml") ||
                                                  file_exists(ROMSPATH.'/'.$system_name."/gamelist.xml") ||
                                                  file_exists(HOME_ES."/gamelists/".$system_name."/gamelist.xml") ||
                                                  file_exists(ES_PATH."/gamelists/".$system_name."/gamelist.xml")
                                                  )
                                              {
                                                  $systems['system'][$i]['has_gamelist'] = true;
                                                  if (filesize($systems['system'][$i]['path']."/gamelist.xml") > 40 ||
                                                      filesize(ROMSPATH.'/'.$system_name."/gamelist.xml") > 40 ||
                                                      filesize(HOME_ES."/gamelists/".$system_name."/gamelist.xml") > 40 ||
                                                      filesize(ES_PATH."/gamelists/".$system_name."/gamelist.xml") > 40
                                                      )
                                                      $systems['system'][$i]['has_games'] = true;
                                              }
                                             $config['systems'][$system_name] = $systems['system'][$i];
                                          }
                                      exit; // this is all we're interested in at the moment
                                      }
                                      

                                      I have an empty page :(

                                      <pre>
                                      </pre>
                                      

                                      I don't understand fine for /opt/retropie/configs/all/emulationstation ?

                                      Life is game, just play it !

                                      1 Reply Last reply Reply Quote 0
                                      • D
                                        darknior
                                        last edited by 14 Nov 2017, 02:13

                                        /opt/retropie/configs/all/emulationstation is PI user
                                        /opt/retropie/configs/all/emulationstation/gamelists PI
                                        Each system and gamelist.xml PI user too.

                                        Life is game, just play it !

                                        1 Reply Last reply Reply Quote 0
                                        • D
                                          darknior
                                          last edited by 14 Nov 2017, 13:29

                                          No right problem, i have finally found :)
                                          It's my fault, but i think you must upgrade a little your XML PARSER for guy"s that write code it don't like.
                                          Now you can remove the code you add yesterday for me, and put again the game counter to show duplicate (PSX) games in console.log.

                                          Explanations :

                                          I have add error_reporting(E_ERROR | E_WARNING); to your svr/config.php file.
                                          And i think you should add it too, for the moment we are not in production mode but most dev mode :p
                                          I read my Apache error.log and then found :

                                          [Tue Nov 14 13:51:48.686359 2017] [:error] [pid 26599] [client 192.168.1.11:58586] PHP Warning:  SimpleXMLElement::__construct(): Entity: line 406: parser error : xmlParseEntityRef: no name in /opt/retropie/supplementary/WebtroPie/app/svr/xml_util.php on line 154
                                          [Tue Nov 14 13:51:48.686442 2017] [:error] [pid 26599] [client 192.168.1.11:58586] PHP Warning:  SimpleXMLElement::__construct():     &lt;command&gt;cd /opt/retropie/ports/openbor/ &amp;&amp; ./OpenBOR %ROM%&lt;/command&gt;  in /opt/retropie/supplementary/WebtroPie/app/svr/xml_util.php on line 154
                                          [Tue Nov 14 13:51:48.686519 2017] [:error] [pid 26599] [client 192.168.1.11:58586] PHP Warning:  SimpleXMLElement::__construct():                                                ^ in /opt/retropie/supplementary/WebtroPie/app/svr/xml_util.php on line 154
                                          

                                          Then i remember in my es_systems.cfg i have add a command line for OpenBOR, i give it to you, with :

                                          <command>cd /opt/retropie/ports/openbor/ && ./OpenBOR %ROM% > /dev/null 2>&1</command>

                                          I know it is not fine to not escape in XML, but ES is cool and understand it without crashing.
                                          I have replace now by :

                                          <command>cd /opt/retropie/ports/openbor/ &amp;&amp; ./OpenBOR %ROM% &lt; /dev/null 2&lt;&amp;1</command>

                                          And all is working fine :)

                                          Life is game, just play it !

                                          1 Reply Last reply Reply Quote 0
                                          70 out of 157
                                          • First post
                                            70/157
                                            Last post

                                          Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.

                                          Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.

                                            This community forum collects and processes your personal information.
                                            consent.not_received