Changeset 2002


Ignore:
Timestamp:
Jun 23, 2016, 5:25:04 PM (3 years ago)
Author:
joamuran
Message:

relase 5.2

Location:
admin-center/trunk/fuentes
Files:
3 added
5 deleted
27 edited

Legend:

Unmodified
Added
Removed
  • admin-center/trunk/fuentes/admin-center.install/etc/n4d/conf.d/TaskMan

    r1869 r2002  
    1111getTaskStatus=anonymous,*
    1212listenTask=anonymous,*
     13prepareLogForDownload=admin,admins,adm
  • admin-center/trunk/fuentes/admin-center.install/usr/lib/python2.7/actasks.py

    r1893 r2002  
    6767                "filepipe": self.filepipe});
    6868       
     69    def getFilePipe(self):
     70        '''
     71        Returns this task filepipe
     72        '''
     73        return self.filepipe
    6974
    7075    def getStatus(self):
  • admin-center/trunk/fuentes/admin-center.install/usr/share/admin-center/css/main.css

    r1893 r2002  
    1 /*@font-face
    2 {
    3         font-family: 'SanFranciscoBold';
    4         src: url(fonts/San-Francisco/System-San-Francisco-Display-Bold.ttf);
    5 }
    6 
    71@font-face
    82{
    9         font-family: 'SanFranciscoRegular';
    10         src: url(fonts/San-Francisco/System-San-Francisco-Display-Regular.ttf);
    11 }
    12 
    13 @font-face
    14 {
    15         font-family: 'SanFranciscoThin';
    16         src: url(fonts/San-Francisco/System-San-Francisco-Display-Thin.ttf);
    17 }
    18 */
     3        font-family: 'Noto Sans';
     4        src: url(fonts/NotoSans-Regular.ttf);
     5}
     6
     7
    198
    209html{
     
    2918  padding: 0px;
    3019  margin: 0px; height: 100%;
    31         background: #f5f5f5;
     20        /*background: #f5f5f5;*/
     21   
     22    /*background-image: url(img/bg.png);*/
     23    background-size: cover;
     24   
    3225        color: #000;
     26    font-family: 'Noto Sans';
    3327/*      font-family: "Ubuntu light", ubuntu;*/
    3428/*      font-family: "SanFranciscoRegular" !important;*/
     
    4943}
    5044
     45.topBanner{
     46  margin: 0px;
     47  border: 0px;
     48  padding:3px;
     49  height: 60px;
     50  color: #ffffff;
     51  background: #03A9F4;
     52  text-align: right;
     53  margin-bottom:30px;
     54  box-shadow:  0px 2px 5px #333333;
     55   
     56}
     57
    5158#bt_logout{
    52   font-weight: bold;
     59/*  font-weight: bold;
    5360  border: 1px solid;
    5461  border-radius: 2px;
    55   padding: 2px;
     62  padding: 2px;*/
     63  position: fixed;
     64  bottom: 10px;
    5665}
    5766
     
    101110.moduleIcon{
    102111  display: block;
    103   width: 32px;
    104   height: 32px;
     112  width: 24px;
     113  height: 24px;
    105114  background-size: cover;
    106   margin: 5px 10px 5px 10px;
     115  margin: 10px;
    107116
    108117}
     
    139148.modal-content-log{
    140149        padding: 2px;
    141         border: 1px solid #333333;
    142         background-color: #ffffee;
     150        border: 1px solid #ededed;
     151        background-color: #fdf6e3;
     152        color: #70848a;
    143153        font-family: monospace;
    144154        height: 400px;
     
    146156        overflow-x: hidden;
    147157        text-overflow: "...";
     158        box-shadow: rgba(0, 0, 0, 0.2) 0px 8px 17px 0px, rgba(0, 0, 0, 0.19) 0px 6px 20px 0px;
    148159}
    149160
     
    177188*/
    178189
    179 .dark-primary-color, .panel-heading    { background: #424F5A !important; color: #ffffff;}
     190/*.dark-primary-color, .panel-heading    { background: #424F5A !important; color: #ffffff;}*/
    180191/*.dark-primary-color, .panel-heading    { background: #263238 !important; color: #ffffff;}*/
    181192/*.default-primary-color { background: #263238  !important; color: #ffffff;}*/
     
    187198.secondary-text-color  { color: #727272  !important; }
    188199.divider-color         { border-color: #B6B6B6  !important; }
     200
     201.btn-primary        { background: #03A9F4  !important; color: #ffffff !important;}
    189202
    190203.modal-body{
  • admin-center/trunk/fuentes/admin-center.install/usr/share/admin-center/info.php

    r1055 r2002  
    1 <h1 i18n>Server Info</h1>
     1<h1 class="topBanner" i18n>Server Info</h1>
    22
    33
  • admin-center/trunk/fuentes/admin-center.install/usr/share/admin-center/js/main.js

    r1525 r2002  
    228228
    229229  $(".menuitem").bind("click", function(){
     230   
    230231    var target=$(this).attr("target");
     232   
    231233    var parentModule=$(this).attr("module");
    232234   
    233235    // Send hiden event to any module different than target
    234236    $(".moduleWindow:not(#"+target+")").trigger("componentHidden");
     237   
     238    // Checking if is info...
     239    if (target=="info") {
     240        $("#info").show();
     241        return 1;
     242    };
    235243
    236244    // 1st: Is a component or a module?
  • admin-center/trunk/fuentes/admin-center.install/usr/share/admin-center/lib/utils.js

    r1893 r2002  
    257257        $(modalbody).append(modallog);
    258258       
    259         var modalProgressContainer=$(document.createElement("div")).addClass("progress-container").attr("id", "progress-container");
    260         var modalProgress=$(document.createElement("div")).addClass("progress-bar").attr("id", "modal-progress-bar").css("width", "0%");
     259        var modalProgressContainer=$(document.createElement("div")).addClass("progress-container progress progress-striped active").attr("id", "progress-container").css({"height":"32px", "background":"rgba(0,0,0,0)"});
     260        var modalProgress=$(document.createElement("div")).addClass("progress-bar progress-bar-info").attr("id", "modal-progress-bar").css({"width":"0%", "height":"24px"});
    261261        $(modalProgressContainer).append(modalProgress);
    262262       
     
    363363                                percent=progress_array[progress_array.length-1];
    364364                                $("#modal-progress-bar").css("width", percent).html(percent);
     365                                if (percent=="100%") {
     366                                        $("#progress-container").removeClass("active");
     367                                        $("#modal-progress-bar").removeClass("progress-bar-info").addClass("progress-bar-success");
     368                                        $("#modal-progress-bar").html(self._("100% -- FINISHED --"));
     369                                       
     370                                        $("#logviewer_btStop").removeClass("btn-primary").addClass("btn-success");
     371                                        $("#logviewer_btStop").off("click");
     372                                       
     373                                       
     374                                        /*
     375                                         *NOT SUPPORTED... LOG FILE IS NOT COMPLETE AT ALL...
     376                                        // Prepare window for download log
     377                                        var targetTask=$("#logviewer_btStop").attr("targetjob");
     378                                        var taskid=targetTask.substring("6",targetTask.length);
     379                                       
     380                                        self.n4d([sessionStorage.username , sessionStorage.password],
     381                                                         "TaskMan",
     382                                                         "prepareLogForDownload",
     383                                                         [taskid],
     384                                                         function(response){
     385                                                                if (response.status) {
     386                                                                        var link="logs/"+response.file;
     387                                                                        $("#logviewer_btStop").html("<a href='"+link+"'>Download Log</a>");
     388                                                                        }
     389                                                        });*/
     390
     391                                }
    365392                        } else {
    366393                                // Or add text to log
     
    399426
    400427
    401 UtilsClass.prototype.n4d=function n4d(credentials, n4dclass, n4dmethod, arglist, callback){
     428UtilsClass.prototype.n4d=function n4d(credentials, n4dclass, n4dmethod, arglist, callback, timeout=1){
    402429   var self=this;
    403430
     
    430457                data: {
    431458                        method: n4dmethod,
    432                         args: JSON.stringify(n4dargs)},
     459                        args: JSON.stringify(n4dargs),
     460                        timeout: timeout},
    433461                //args: n4dargs},
    434462                success: function(ret){
  • admin-center/trunk/fuentes/admin-center.install/usr/share/admin-center/login.php

    r1512 r2002  
    33
    44        <link rel="stylesheet" href="lib/bootstrap/css/bootstrap.min.css">
    5         <!--link rel="stylesheet" href="lib/bootstrap/css/bootstrap-theme.min.css"-->
     5       
     6        <!--link rel="stylesheet" href="lib/bootstrap-design/css/material.min.css"-->
     7        <link rel="stylesheet" href="lib/bootstrap-material-design/css/bootstrap-material-design.min.css">
     8        <link rel="stylesheet" href="lib/bootstrap-material-design/css/ripples.min.css">
     9        <!--link rel="stylesheet" href="lib/bootstrap-material-design/css/material-fullpalette.min.css"-->
     10        <link rel="stylesheet" href="lib/snackbar/snackbar.css">
     11        <!--link rel="stylesheet" href="lib/bootstrap-design/css/ripples.min.css"-->
     12        <!--link rel="stylesheet" href="lib/material/css/ripples.min.css"-->
     13        <!--link rel="stylesheet" href="lib/bootstrap-design/css/roboto.min.css"-->
     14        <link rel="stylesheet" href="lib/bootstrap-material-design/css/material-custom.css">
     15        <link rel="stylesheet" href="css/main.css">
    616
    7         <link rel="stylesheet" href="lib/bootstrap-design/css/material.min.css">
    8         <link rel="stylesheet" href="lib/bootstrap-design/css/material-fullpalette.min.css">
    9         <link rel="stylesheet" href="lib/snackbar/snackbar.css">
    10         <link rel="stylesheet" href="lib/bootstrap-design/css/ripples.min.css">
    11         <link rel="stylesheet" href="lib/bootstrap-design/css/roboto.min.css">
    12 
     17       
     18        <!--jquery -->
     19        <script type="text/javascript" src="lib/jquery/jquery.js"></script>
     20        <!--script type="text/javascript" src="lib/jquery-ui/js/jquery-ui-1.10.4.custom.js"></script-->
     21        <!--script type="text/javascript" src="lib/jquery.xmlrpc.js"></script-->
     22       
    1323        <!--Utilities -->
    1424        <script type="text/javascript" src="lib/waitwin.js"></script>
    1525        <script type="text/javascript" src="lib/utils.js"></script>
    16 
    17         <!--jquery -->
    18         <script type="text/javascript" src="lib/jquery-2.1.0.min.js"></script>
    19         <!--script type="text/javascript" src="lib/jquery-ui/js/jquery-ui-1.10.4.custom.js"></script-->
    20         <script type="text/javascript" src="lib/jquery.xmlrpc.js"></script>
    2126
    2227
     
    2530
    2631        <!-- Material Design -->
    27         <script type="text/javascript" src="lib/bootstrap-design/js/ripples.min.js"></script>
    28         <script type="text/javascript" src="lib/bootstrap-design/js/material.min.js"></script>
     32        <!--script type="text/javascript" src="lib/bootstrap-design/js/ripples.min.js"></script-->
     33        <script type="text/javascript" src="lib/bootstrap-material-design/js/ripples.min.js"></script>
     34        <!--script type="text/javascript" src="lib/bootstrap-design/js/material.min.js"></script-->
     35        <script type="text/javascript" src="lib/bootstrap-material-design/js/material.min.js"></script>
    2936
    3037
     
    7582
    7683
    77                 <div style="margin-top: 10px; margin-left: 100px;">
     84                <!--div style="margin-top: 10px; margin-left: 100px;"-->
     85                <div style="float:right;">
    7886                        <button id="LoginButton" class="btn btn-primary btn-lg" value="<?php gt("login");?>"></button>
    7987                </div>
  • admin-center/trunk/fuentes/admin-center.install/usr/share/admin-center/main.php

    r1609 r2002  
    1212/* Setting layout */
    1313echo ("<body>");
    14 writeTop();           //  Drawing layout header
    15 writeMenu($modules);  //  Drawing menus
     14//writeTop();           //  Drawing layout header
     15WriteMenu($modules);  //  Drawing menus
    1616
    1717writeModulesContainers($modules);
     
    8383function importCommonLibraries(){
    8484  echo ('<!-- Common Libraries -->');
    85   echo ('<script type="text/javascript" src="lib/jquery-2.1.0.min.js"></script>');
    86   echo ('<script type="text/javascript" src="lib/jquery.xmlrpc.js"></script>');
     85  echo ('<script type="text/javascript" src="lib/jquery/jquery.js"></script>');
     86  //echo ('<script type="text/javascript" src="lib/jquery.xmlrpc.js"></script>');
    8787
    8888  echo ('<script type="text/javascript" src="lib/bootstrap/js/bootstrap.min.js"></script>');
    89   echo ('<script type="text/javascript" src="lib/bootstrap-design/js/ripples.min.js"></script>');
    90   echo ('<script type="text/javascript" src="lib/bootstrap-design/js/material.min.js"></script>');
     89  echo ('<script type="text/javascript" src="lib/bootstrap-material-design/js/ripples.min.js"></script>');
     90  echo ('<script type="text/javascript" src="lib/bootstrap-material-design/js/material.min.js"></script>');
    9191  echo ('<script type="text/javascript" src="lib/snackbar/snackbar.min.js"></script>');
    9292  echo ('<script type="text/javascript" src="lib/bootbox.min.js"></script>');
     
    127127    <!-- Common Styles -->
    128128     <meta charset="UTF-8">
     129     
     130     
     131     
     132 
     133       
     134       
     135 
     136     
     137     
    129138    <link rel="stylesheet" href="css/sidebar-menu.css">
    130139    <link rel="stylesheet" href="lib/material-icons/material_icons.css">
     140    <!--link rel="stylesheet" href="lib/bootstrap/css/bootstrap.min.css"-->
    131141    <link rel="stylesheet" href="lib/bootstrap/css/bootstrap.min.css">
    132     <link rel="stylesheet" href="lib/bootstrap-design/css/ripples.min.css">
    133     <link rel="stylesheet" href="lib/bootstrap-design/css/material.min.css">
     142    <link rel="stylesheet" href="lib/bootstrap-material-design/css/bootstrap-material-design.min.css">
     143    <!--link rel="stylesheet" href="lib/bootstrap-design/css/ripples.min.css"-->
     144    <link rel="stylesheet" href="lib/bootstrap-material-design/css/ripples.min.css">
     145    <!--link rel="stylesheet" href="lib/bootstrap-design/css/material.min.css"-->
    134146    <link rel="stylesheet" href="lib/snackbar/snackbar.css">
    135         <link rel="stylesheet" href="lib/jquery-ui/jquery-ui.css">     
     147   
     148    <link rel="stylesheet" href="lib/jquery-ui/jquery-ui.css"> 
    136149    <link rel="stylesheet" href="css/main.css">
    137150    <link rel="stylesheet" href="css/waitwin.css">
    138     <!--link rel="stylesheet" href="lib/bootstrap-design/css/material-fullpalette.min.css"-->
     151    <link rel="stylesheet" href="lib/bootstrap-material-design/css/material-custom.css">
     152 
    139153
    140154
     
    150164                  <div id="sidebar_header"></div>
    151165            <ul class="sidebar-nav nav-pills nav-stacked" id="menu">
     166              <!--  Main page link  -->
     167              <!--li><a class='menuitem' onclick="window.location.reload();"-->
     168              <li><a class='menuitem' target='info'>
     169              <span class='fa-stack fa-lg pull-left'><div class='moduleIcon' style='background-image:url(icons/default.png)'></div>
     170              </span>Home</a>
     171             
     172             
    152173              <?php
    153174                  foreach($modules as $key=>$value){
     
    188209              ?>
    189210            </ul>
    190         <div id="sidebar_module_description_div" class="menuitem">
     211           
     212              <span i18n id='bt_logout'>
     213                <span style="display: inline"><i title="Logout" class="material-icons moduleIcon" style="display:inline;">power_settings_new</i></span>
     214              </span>
     215             
     216           
     217        <!--div id="sidebar_module_description_div" class="menuitem">
    191218                  <span id="sidebar_module_description_image" class="fa-stack fa-lg pull-left"><div class="moduleIcon" style="background-image:url(modules/lliurex-guard/src/icons/guard_flat.png)"></div></span>
    192                   <!--span >Pajaritos tralari... esto es la descvripción del modulo...</span-->
     219                  <!--span >Pajaritos tralari... esto es la descvripción del modulo...</span-- >
    193220                  <span id="sidebar_module_description_text">Pajaritos tralari... esto es la descvripción del modulo...</span>
    194221                  </span> 
    195                 </div>
     222                </div-->
    196223                </div>
    197224    </div>
  • admin-center/trunk/fuentes/admin-center.install/usr/share/admin-center/n4d.php

    r1512 r2002  
    2929}
    3030
    31 function n4d($method, $args){
     31function n4d($method, $args, $timeout){
    3232 
    3333  writeHeader();
     
    4545    curl_setopt($ch, CURLOPT_POSTFIELDS, $request);
    4646   
    47     curl_setopt($ch, CURLOPT_FRESH_CONNECT, true);  // async
    48     curl_setopt($ch, CURLOPT_TIMEOUT, 1);       // async
     47   
     48    if ($timeout!="0"){
     49      error_log("**************************************************************");
     50      curl_setopt($ch, CURLOPT_FRESH_CONNECT, true);  // async
     51      curl_setopt($ch, CURLOPT_TIMEOUT, $timeout);       // async
     52    }
    4953 
    5054    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, true);
     
    5660    curl_close($ch);
    5761   
    58     error_log(curl_errno($ch));
     62    //error_log($data);
     63    //error_log(curl_errno($ch));
    5964    if (curl_errno($ch)) {
    6065      $xml_snippet=simplexml_load_string($data);
     
    6368    } else {
    6469        $xmlobj=xmlrpc_decode($data);
     70       
     71      error_log($xmlobj);
     72       
    6573        $json=json_encode($xmlobj);
    6674        var_error_log($data);
     
    6977        if ($json=="") {
    7078          $json=$xmlobj;}
     79          //error_log($json);
    7180          var_error_log($json);
    7281        echo ($json);
     
    9099  $method=$_POST["method"];
    91100  $args=json_decode($_POST["args"]);
     101  $timeout=$_POST["timeout"];
    92102  $myfile = fopen("/tmp/n4dlog","a");
    93103  fwrite($myfile,$method);
     
    100110    else $log="false";
    101111   
    102   n4d($method, $args);
     112  n4d($method, $args, $timeout);
    103113  //$n4d_async = new n4dAsync();
    104114  //$n4d_async ->start($method, $args);
  • admin-center/trunk/fuentes/admin-center.install/usr/share/n4d/python-plugins/RemoteWebGui.py

    r1055 r2002  
    5050               
    5151
    52         def create_connection(self,  xephyr_options=" -ac -terminate -screen 1024x768 "):
     52        def create_connection(self,  username, xephyr_options=" -ac -terminate -screen 1024x768 -dpi 96 "):
    5353                # Cal afegir com a parametre el username i que retorne el port....
    5454                try:
    55                         os.environ["HOME"]="/home/lliurex";
    56                         os.environ["XAUTHORITY"]="/home/lliurex/.Xauthority";
     55                        os.environ["HOME"]="/home/"+username;
     56                        os.environ["XAUTHORITY"]="/home/"+username+"/.Xauthority";
    5757
    5858                        display=self.get_first_display_free()
    5959                        port=self.get_first_free_port();
    6060                       
     61                        print "PORT: ",port," DISPLAY: ",display
     62
    6163                        xephyr_cmd="Xephyr "+xephyr_options+" "+display;
    62                         xpra_cmd="xpra start --bind-tcp=0.0.0.0:"+str(port)+" --html=on --no-pulseaudio --exit-with-children --start-child='"+xephyr_cmd+"'";
     64                        #xephyr_cmd="Xnest -ac -geometry 800x600+24 "+display;
     65                        xpra_cmd="xpra start --bind-tcp=0.0.0.0:"+str(port);
     66                        xpra_cmd=xpra_cmd+" --html=on --no-pulseaudio --exit-with-children --start-child='"+xephyr_cmd+"'";
    6367                        print "Exec: "+xpra_cmd;
     68                        p=subprocess.call([xpra_cmd], shell=True);                     
    6469                       
    65                         p=subprocess.call([xpra_cmd], shell=True);
     70                        # PROVAR ASO EN ALTRE LLOC O MIRAR X Q NO VA
     71                        #  https://xpra.org/trac/wiki/Usage
     72                        #xpra_cmd2="xpra attach tcp:0.0.0.0:"+str(port)+" --border=black,0 --window-close=ignore --desktop-scaling=auto";
     73                        #print "bbbbbbbbbb"
     74                        #p2=subprocess.call([xpra_cmd2], shell=True);
     75                        #print "cccccccccccccc"
     76                       
    6677                       
    6778                        # wait for port is listening
     
    7384                       
    7485                        print "port "+str(port)+" is available with status: "+str(status);
    75                         return {'port':str(port), 'display':display};
     86                        #sleep (2)
     87                        return {"status":True, "msg":{"port":str(port), "display":display}};
    7688                       
    7789                except Exception as e:
    78                         print e
    79                         return -1
     90                        print "[RemoteWebGui] create_connection Exception: ",e
     91                        return {'status':False, 'msg': str(e)}
    8092               
    81                 return 0
     93                return {'status':False, 'msg': 'unknown'}
    8294               
    8395        #def remote_execute
     
    90102                        print e
    91103                        return -1
    92 
    93                 return 0
     104               
     105                return 0
    94106
    95107
     
    104116                        return -1
    105117
    106                 return 0
     118                return 0
    107119
    108120       
  • admin-center/trunk/fuentes/admin-center.install/usr/share/n4d/python-plugins/TaskMan.py

    r1869 r2002  
    88#import tempfile
    99
    10 #import os
     10import os
    1111#import signal
    12 #import shutil
     12import shutil
     13import ntpath
    1314
    1415
     
    100101       
    101102
     103    def prepareLogForDownload(self, taskid):
     104        '''
     105        Copies task status from /run/taskmanager/pipe_XXX corresponding to taskid to admincenter/logs
     106        '''
     107        try:
     108            pipe=self.tasks[taskid].getFilePipe();
     109            if not os.path.exists("/tmp/taskslog"):
     110                os.makedirs("/tmp/taskslog")
     111            shutil.copy(pipe, "/tmp/taskslog/");
     112           
     113            return {"status":True, "file":ntpath.basename(pipe)}
     114       
     115        except Exception as e:
     116            return {"status": False, "msg":str(e)}
     117       
     118
    102119    def cancelTask(self, taskid):
    103120        print "REMOVING ", str(taskid)
  • admin-center/trunk/fuentes/debian/admin-center.postinst

    r1055 r2002  
    88LINK_NAME="/var/www/admin-center"
    99APP_NAME="/usr/share/admin-center"
     10LOGS_DIR="/tmp/taskslog"
    1011N4D_CERT_PATH="/etc/n4d/cert/n4dcert.pem"
    1112N4D_CERT_LINK="${APP_NAME}/n4dcert.pem"
     
    1617        ln -s  ${APP_NAME} ${LINK_NAME} || true
    1718        ln -s ${N4D_CERT_PATH} ${N4D_CERT_LINK} || true
     19        ln -s ${LOGS_DIR} ${APP_NAME}/logs || true
    1820       
    1921        if [ -e /usr/share/apache2/apache2-maintscript-helper ] ; then
  • admin-center/trunk/fuentes/debian/changelog

    r1893 r2002  
     1admin-center (0.5.2) xenial; urgency=high
     2
     3  * Updated libraries
     4  * Fixed n4d curl call with timeout and syncronous
     5  * Customized material
     6
     7 -- joamuran <joamuran@gmail.com>  Thu, 23 Jun 2016 17:22:50 +0200
     8
    19admin-center (0.5.1) xenial; urgency=high
    210
Note: See TracChangeset for help on using the changeset viewer.