- <?php
- /*
- ini_set('display_errors', 1);
- ini_set('display_startup_errors', 1);
- error_reporting(E_ALL);
- */
- session_start();
- include('config.php');
- include('habit.php');
- $error = "";
-
- if(isset($_REQUEST['password']) && md5($_REQUEST['password']) == $password){
- $_SESSION['loggedin'] = true;
- }
-
- if( $_SERVER['HTTP_USER_AGENT'] == $password)
- $_SESSION['loggedin'] = true;
-
-
- function getMyUrl(){
- $protocol = isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on' ? 'https' : 'http';
- $host = $_SERVER['HTTP_HOST'];
- $port = $_SERVER['SERVER_PORT'];
-
- // Exclude standard ports to prevent redundancy in the URL
- if (($protocol === 'http' && $port != 80) || ($protocol === 'https' && $port != 443)) {
- $url = "$protocol://$host";
- } else {
- $url = "$protocol://$host";
- }
-
- return $url;
- }
-
- ?>
-
- <html>
- <head>
-
- <link rel="stylesheet" href="/deps/all.css" >
-
- <script type="text/javascript" src="/deps/d3.v3.min.js"></script>
- <script type="text/javascript" src="/deps/cal-heatmap.min.js"></script>
- <link rel="stylesheet" href="/deps/cal-heatmap.css" />
-
- <link href="/deps/google-fonts.css" rel="stylesheet">
- <link rel="stylesheet" href="/deps/jquery-ui.css">
- <link rel="stylesheet" href="/deps/fa.css">
- <script src="/deps/jquery-1.12.4.js"></script>
- <script src="/deps/jquery-ui.js"></script>
- <link rel="stylesheet" href="habit_ui_style.css" >
-
- <script src="habit_ui_script.js"></script>
- </head>
- <body>
-
- <center>
- <?php if($error <> ""){echo $error; } ?>
-
-
-
- <div class="habit-container-wrapper">
-
-
- <?php
-
- $fileContent = file_get_contents($habitlog);
- if ($fileContent === false) {
- die("Error reading the file.");
- }
- $resultArray = habit_parse_file($fileContent);
-
- foreach ($resultArray as $section) {
- $align = "";
- $buttonClass = "";
- $buttText = "";
- if($section['Category'][0] == "d"){
-
- $type = "day";
- $cat = "(daily)";
- if($section['Category'][1] == "+"){
- $align = "good";
- $calCol = "#58e81b";
- $title1 = "Streak";
- $title2 = "Missed";
- $title3 = "Top";
- $result1 = habit_get_stat_streak($section['Activity'], $moodlog);
- $result2 = habit_get_stat_missed($section['Activity'], $moodlog);
- $result3 = habit_get_stat_top($section['Activity'], $moodlog);
-
- }
- if($section['Category'][1] == "-"){
- $align = "bad";
- $calCol = "#e81b1b";
- $title1 = "Streak";
- $title2 = "Total";
- $title3 = "Top";
- $result1 = habit_get_stat_missed($section['Activity'], $moodlog);
- $result2 = habit_get_stat_year($section['Activity'], $moodlog);
- $result3 = habit_get_stat_top_missing($section['Activity'], $moodlog);
- }
- $todayCheck = habit_check_daily($section['Activity'], $moodlog);
- $last10 = habit_last_10_daily($section['Activity'], $moodlog);
- foreach ($last10 as $key => $value) {
- $last10_conv[$key] = "neut";
- if ($section['Category'][1] == "+" && $value == 1)
- $last10_conv[$key] = "green";
- if ($section['Category'][1] == "+" && $value == 0)
- $last10_conv[$key] = "red";
- if ($section['Category'][1] == "-" && $value == 1)
- $last10_conv[$key] = "red";
- if ($section['Category'][1] == "-" && $value == 0)
- $last10_conv[$key] = "green";
-
- }
-
- if ($todayCheck) {
- $buttonClass = 'button-'.$align;
- }
- }
- if($section['Category'][0] == "w"){
- $multiplier = $section['Category'][1];
- $type = "week";
- $cat = "(weekly x $multiplier)";
- $align = "good";
- $title1 = "Streak";
- $title2 = "Missed";
- $title3 = "Top";
- $result1 = habit_get_stat_streak_week($section['Activity'], $multiplier, $moodlog);
- $result2 = habit_get_stat_missed_week($section['Activity'], $multiplier, $moodlog);
- $result3 = habit_get_stat_top_week($section['Activity'], $multiplier, $moodlog);
-
- $todayCheck = habit_check_daily($section['Activity'], $moodlog);
- $weekCount = habit_count_weekly($section['Activity'], $moodlog);
- $last10 = habit_last_10_weekly($section['Activity'], $moodlog);
- foreach ($last10 as $key => $value) {
- $last10_conv[$key] = "neut";
- if ($value >= $multiplier)
- $last10_conv[$key] = "green";
- if ($value < $multiplier)
- $last10_conv[$key] = "yellow";
- if ($value === "x")
- $last10_conv[$key] = "neut";
- if ($value === 0)
- $last10_conv[$key] = "red";
- }
-
-
- if ($weekCount < $multiplier) {
- $buttText = $weekCount;
- $buttonClass = 'button-yellow';
- } elseif ($weekCount >= $multiplier) {
- $buttonClass = 'button-done';
- if($todayCheck){
- $buttonClass= 'button-good';
- $buttText = "";
- }
- }
- if ($todayCheck) {
- $buttonClass = 'button-neut';
-
- if ($weekCount >= $multiplier) {
- $buttonClass = 'button-good';
- }
- }
- if($weekCount == 0){
- $buttonClass = '';
- $buttText = "";
- }
-
- }
-
-
-
- echo '
- <div class="habit-container" id="'.$section['Activity'].'">
- <div class="habit-log">
- <button class="habit-log-button '.$buttonClass.'" onClick="updateHabit(\''.$section['Activity'].'\')">'.$buttText.'</button>
- </div>
- <div class="habit-main">
- <div class="'.$align.' habit-title">#'.$section['Activity'].' <div class="habit-timescale">'.$cat.'</div></div>
- <div class="habit-desc">'.$section['Description'].'</div>
- </div>
- <div class="habit-info">
- <div class="habit-score"><div class="score-title">'.$title1.'</div><div class="score-result result1">'.$result1.'</div></div>
- <div class="habit-score"><div class="score-title">'.$title2.'</div><div class="score-result result2">'.$result2.'</div></div>
- <div class="habit-score"><div class="score-title">'.$title3.'</div><div class="score-result result3">'.$result3.'</div></div>
- </div>
- <div class="habit_long_container">
- <div class="long_tick lt'.$last10_conv['last_10_1'].'"></div>
- <div class="long_tick lt'.$last10_conv['last_10_2'].'"></div>
- <div class="long_tick lt'.$last10_conv['last_10_3'].'"></div>
- <div class="long_tick lt'.$last10_conv['last_10_4'].'"></div>
- <div class="long_tick lt'.$last10_conv['last_10_5'].'"></div>
- <div class="long_tick lt'.$last10_conv['last_10_6'].'"></div>
- <div class="long_tick lt'.$last10_conv['last_10_7'].'"></div>
- <div class="long_tick lt'.$last10_conv['last_10_8'].'"></div>
- <div class="long_tick lt'.$last10_conv['last_10_9'].'"></div>
- <div class="long_tick lt'.$last10_conv['last_10_10'].'"></div>
- </div>
-
- </div>
- ';
-
-
- }
-
- ?>
-
-
-
- </div>
- </div>
-
- </center>
- </body>
- </html>