]> git.quilime.com - clmpr.git/commitdiff
Added about page, added beginnings of fulltext tag search
authorGabriel Dunne <gdunne@quilime.com>
Wed, 21 Dec 2011 03:15:27 +0000 (19:15 -0800)
committerGabriel Dunne <gdunne@quilime.com>
Wed, 21 Dec 2011 03:15:27 +0000 (19:15 -0800)
TODO
about.html [new file with mode: 0644]
clmpr.sql
footer.html
get.php
index.php
signin.php

diff --git a/TODO b/TODO
index a89acfc5e3d020bbf2fb31b69b0fe54cafe7f640..26451859bd3174bf973834877fd685093ff9374c 100644 (file)
--- a/TODO
+++ b/TODO
@@ -13,3 +13,6 @@ pages
 
 ref
        http://www.pui.ch/phred/archives/2005/05/tags-with-mysql-fulltext.html
+       http://code.google.com/p/mysqlicious/
+
+
diff --git a/about.html b/about.html
new file mode 100644 (file)
index 0000000..fc578a1
--- /dev/null
@@ -0,0 +1,42 @@
+<hr />
+<p>
+<b>c</b>itation, <b>l</b>ogging and <b>m</b>ulti-<b>p</b>urpose a<b>r</b>chive
+<br />
+<br />
+</p>
+<p>
+use clmpr (<b>/klum-per/</b>) to save bookmarks.
+<p>
+
+<strong>to use: </strong>
+<?php
+    $js = file_get_contents('bookmarklet.js');
+    $js = str_replace('{BASE_URL}', BASE_URL, $js);
+?>
+drag this link [<a href="javascript:<?=$js?>">+</a>] to your bookmark bar
+<br />
+<br />
+</p>     
+
+<p>
+project keywords: <i>
+bookmarks, 
+delicious-clone.
+webservice,
+database,
+mindmap,
+citation,
+semantic
+</i>
+<br /><br />
+</p>
+
+<p>
+clmpr is open source. fork the project on <a href="http://github.com/quilime/clmpr">github</a>
+<br />
+<br />
+</p>
+
+
+<!-- echo '&copy; 2011 <a href="http://quilime.com">gabriel dunne</a>'; -->
+<hr />
\ No newline at end of file
index 85697439cb8902f45f46f154654679bdc277b11f..27442707a234d0e5341eb8b92b1280d9df8b260f 100644 (file)
--- a/clmpr.sql
+++ b/clmpr.sql
@@ -10,7 +10,9 @@ CREATE TABLE `clumps` (
   `description` text NOT NULL,
   `tags` text NOT NULL,
   `date` datetime NOT NULL,
-  PRIMARY KEY (`id`)
+  PRIMARY KEY (`id`),
+  KEY `date` (`date`),
+  FULLTEXT KEY `tags` (`tags`)
 ) ENGINE=MyISAM AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
 
 CREATE TABLE `tags` (
index 555933099463b4379c7d82435c9b41515c1fc81f..84c9b697300b28648115b7f13742239c27e6e10e 100644 (file)
@@ -1,6 +1,6 @@
 <div id="footer">
 <p>
-<a class="about" href="/about">about</a> | <a href="https://github.com/quilime/clmpr">source code</a>
+<a href="http://<?php echo BASE_URL; ?><?php echo $_SERVER['REQUEST_URI'] ?>/.xml">rss</a> | <a class="about" href="/about">about</a> | <a href="https://github.com/quilime/clmpr">source code</a>
 </p>
 </div>
 
diff --git a/get.php b/get.php
index 6b763926ef261f88790cdbc8e124c99c2307082b..0eb9941205f6497acf00b978755ce565c7cdfd4a 100644 (file)
--- a/get.php
+++ b/get.php
@@ -9,12 +9,13 @@ $params['id']   = isset($_GET['id']) ? $_GET['id'] : null;
 $pathinfo = pathinfo($_SERVER['REQUEST_URI']);
 $format = isset($pathinfo['extension']) ? $pathinfo['extension'] : null;
 
-$endpoint = '';
-$endpoint = str_replace('.'.$format, '', $endpoint);
 
 $dbh = get_db_connection();
 $dbh->beginTransaction();
 
+$q = null;
+$tag = null;
+
 try {
     if ($params['user']) {
         $user = get_users($dbh, array('user' => $params['user'] ));
@@ -37,6 +38,16 @@ try {
                             ORDER BY date DESC");
         $q->execute( array( $params['id'] ));        
     }
+    else if ($endpoint == 'tag' && isset($urlparts[1])) {
+        $tag = $urlparts[1];
+        $q = $dbh->prepare("SELECT *, clumps.id as clump_id 
+                            FROM clumps 
+                            JOIN users 
+                                ON users.id = clumps.user_id 
+                            WHERE tags LIKE ?  
+                            ORDER BY date DESC");
+        $q->execute( array('%'.$tag.'%') );
+    }
     else {
         $q = $dbh->prepare("SELECT *, clumps.id as clump_id 
                             FROM clumps 
@@ -72,6 +83,11 @@ switch ($format) {
 
 <?php include 'header.html'; ?>
 
+<?php if ($tag) : ?>
+<p>
+<strong><a href="/tags/">tag</a>:</strong> <i><?php echo $tag ?></i>
+</p>
+<?php else: ?>
 <p>
 bookmarklet:
 <?php
@@ -80,18 +96,15 @@ bookmarklet:
 ?>
 <a href="javascript:<?=$js?>">+</a>
 </p>
+<?php endif; ?>
 
-<p>
-<a href="http://<?php echo BASE_URL; ?><?php echo $_SERVER['REQUEST_URI'] ?>.xml">rss</a>
-</p>
 
 <hr />
 
-
 <script>
 function deleteClump( id, elem ) {
     if (confirm("confirm delete")) {
-        $.post('delete.php', { clump_id : id }, function(result) {
+        $.post('/delete.php', { clump_id : id }, function(result) {
             $(elem).hide();
         }, 'json');
         return false;
@@ -99,8 +112,9 @@ function deleteClump( id, elem ) {
 }
 </script>
 
+
 <ul class="links">
-<?php for($i = 0; $row = $q->fetch(); $i++ ): 
+<?php if ($q) : for($i = 0; $row = $q->fetch(); $i++ ): 
 
     # process description
     $hasDescription = $row['description'] || false;
@@ -130,7 +144,7 @@ function deleteClump( id, elem ) {
             <?php if (count($row['tags']) > 0) : ?>                
             <ul class="tags">
                 <?php foreach($row['tags'] as $tag) : ?>
-                <li><a href="/tags.php?tag=<?=$tag?>"><?=$tag?></a></li>
+                <li><a href="/tag/<?=$tag?>"><?=$tag?></a></li>
                 <? endforeach; ?>
             </ul>            
             <?php endif; ?>
@@ -144,12 +158,12 @@ function deleteClump( id, elem ) {
 
         <?php if ($user['user'] == $row['user']): ?>
             <a href="/edit.php?id=<?php echo $row['clump_id'];?>" class="ui edit">&#x2710;</a>
-            <a href="#" title="Delete" onClick="return deleteClump(<?php echo $row['clump_id']; ?>, this.parentNode);" class="ui delete">&times;</a>
+            <a href="#" title="Delete" onClick="return deleteClump(<?php echo $row['clump_id']; ?>, this.parentNode.parentNode);" class="ui delete">&times;</a>
         <?php endif; ?>              
 
     </li>
 
-<?php endfor; ?>
+<?php endfor; endif; ?>
 </ul>
 
 
index 712000cb25d3c56311444ca1823a38df99ff8e9c..793a2cf6aef960d70ffffafa05721d7744af083c 100644 (file)
--- a/index.php
+++ b/index.php
@@ -4,7 +4,8 @@ require_once 'init.php';
 
 $url = isset($_GET['_url']) ? trim($_GET['_url'], '/') : '/';
 
-list($endpoint) = explode('/', $url);
+$urlparts = explode('/', $url);
+list($endpoint) = $urlparts;
 
 $pathinfo = pathinfo($_SERVER['REQUEST_URI']);
 $format = isset($pathinfo['extension']) ? $pathinfo['extension'] : null;
@@ -16,61 +17,17 @@ switch($endpoint)
     case 'about' :
         include 'head.html';
         include 'header.html';
-        echo '<hr />';
-
-        ?>
-
-        <p>
-        <b>c</b>itation, <b>l</b>ogging and <b>m</b>ulti-<b>p</b>urpose a<b>r</b>chive
-        <br />
-        <br />
-        </p>
-
-        <p>
-
-        use clmpr (<b>/klum-per/</b>) to save bookmarks.
-
-
-<p>
-
-<strong>to use: </strong>
-<?php
-    $js = file_get_contents('bookmarklet.js');
-    $js = str_replace('{BASE_URL}', BASE_URL, $js);
-?>
-drag this link [<a href="javascript:<?=$js?>">+</a>] to your bookmark bar
-<br />
-<br />
-</p>     
-
-<p>
-project keywords: <i>
-bookmarks, 
-delicious-clone.
-webservice,
-database,
-mindmap,
-citation,
-semantic
-</i>
-
-<br /><br />
-</p>
-
-
-
-
-<p>
-clmpr is open source. fork the project on <a href="http://github.com/quilime/clmpr">github</a>
-</p>
-
-        <?
-
-        //echo '&copy; 2011 <a href="http://quilime.com">gabriel dunne</a>';
-        echo '<hr />';
+        include 'about.html';
         include 'footer.html';
         exit;
 
+    case 'tag' : 
+    case 'tags' : 
+        if (count($urlparts) == 1) {
+            include 'tags.php';
+            exit;
+        }
+    
     default :
         if ($endpoint != '') {
             $dbh = get_db_connection();
index 644b612c06fa0cc3d6894fc4e12789adf28a6248..d6f98a3e8b3c1638d36f7194014bd967c8b441bb 100644 (file)
@@ -48,7 +48,7 @@
         var user = $('#nuser').val();
         var pass = $('#npass').val();
         $('#register').text("creating user...");
-        $.post('signup.php', { user : user, pass : pass }, function(result) {
+        $.post('/signup.php', { user : user, pass : pass }, function(result) {
             if (result.success = 'true') {
                 window.location.reload();
             }
@@ -65,7 +65,7 @@
         var user = $('#user').val();
         var pass = $('#pass').val();
         $('#signin').text("signing in...");
-        $.post('signin.php', { user : user, pass : pass }, function(result) {
+        $.post('/signin.php', { user : user, pass : pass }, function(result) {
             window.location.reload();
         }, 'json');
     }
@@ -73,7 +73,7 @@
 
     function onLogout()
     {
-        $.post('signin.php', { logout : 1 }, function(result) {
+        $.post('/signin.php', { logout : 1 }, function(result) {
             $('#signin').html(result.mssg);
             window.location.reload();
         }, 'json');